Text
                    С. Скловская
манды
Linu
Справочник
Издание третье,
переработанное и дополненное
W DiaSoft
Москва • Санкт-Петербург • Киев
2004


ББК 32.973.2 УДК 681.3. 06(075) С 43 С.Л.Скловская С 43 Команды Linux. Справочник, 3-е изд., псрераб. и доп. / СЛ.Скловская. - СПб.: ООО «ДиаСофтЮП», 2004. - 848 с. ISBN 5-93772-И 3-6 Что представляют собой команды? Это — основа всех основ. Хотя информация о них подчас рассредоточена в разных местах, не всегда отличается полнотой, в ряде дистрибутивов на некоторые команды вообще отсутствует документация. Книга «Команды Linux. Справочник. Издание третье, переработанное и дополненное» содержит свыше 530 команд: классических и совсем новых, популярных и нс очень, незаслуженно забытых или не нашедших у нас должного распространения. Их описания расположены в алфавитном порядке. Все команды также классифицированы по тематическим направлениям и представлены в разделе «Типовые операции». Третье издание дополнено новыми командами по самым разным направлениям. Большое внимание уделено файловым системам cxt3 и ReiserFS и связанным с ними командам. Расширены приложения VI и VII. Справочник рассчитан на пользователей Linux без привязки к определенному дистрибутиву, а также на пользователей FrceBSD и ОС Unix. ББК 32.973.2 Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Все упомянутые в данном издании товарные знаки и зарегистрированные товарные зна ки принадлежат своим законным владельцам. Информация, содержащаяся в данной книге, получена из источников, рассматриваемых издательством как надежные. Тем не менее, имея в виду возможные человеческие ичи технические ошибки, издательство не может гарантировать абсолютную точность и полноту приводимых сведений и нс несет ответственности за возможные ошибки, связанные с использованием книги. © ООО «ДиаСофтЮП». 2004 ISBN 5-93772-1I3-6 (рус.) © Оформление ООО «ДиаСофтЮП». 2004 Гигиеническое заключение № 77.99.6.953.П.438.2.99 иг 04.02.1ЧЧЧ
Содержание Вместо аннотации 7 Справочник команд - ваш навигатор в динамичном мире Linux 8 Как работать с командами. Общие положения 9 Условные обозначения в описаниях синтаксиса 9 Как подобрать необходимые команды 10 I. Типовые операции 11 Файлы и каталоги 11 Запуск заданий (команд), управление процессами 13 Клавиатура 15 Шрифты 16 16 Сети Почта Usenet, InterNetNews X Window Работа с изображениями Административные задачи Счета пользователей и групп, пароли Разработка программного обеспечения.. Служебные информационные команды .. II. Команды ..18 ..19 ..21 ..22 ..23 ..27 ..27 ..29 .30 ас 30 access 31 addr2line 32 adduser 33 adjtimex 33 alias 34 amd 35 amq 36 anacron 37 animate 38 answer 42 appres 42 apropos 43 ar 44 arch arp as . ascpu ash asload at atobm 55 atq 56 atrm 57 audiocompose 57 audiosend 57 aumix 58 autofs 59 automount 60 awk 61 badblocks 61 banner 61 basename 62 bash 63 batch 64 batcher 65 be 66 bdflush 68 bdftopcf 69 bg 70 bison 70 bitmap 72 bmptoppm 73 bmtoa 74 buffchan 74 bunzip2 75 bzcat 76 bzip2 76 bzip2recover 77 c++filt 78 cal 79 cat 79 есср. или ерр 81 cd 83 cdp 83 cdrecord 85 chage 92 chat 92 chattr 94 chfn 95 chgrp 96 chkeonfig 97 chkfontpath 98 chmod 99 chown 102 chroot 103 chsh 103 ci 104 cksum 108 clear 109 emp 109 со 111 eolert 115 colrm 115 column 116 combine 117 comm 121 comp 123 composite 124 compress 130 consolechars 131 convert 133 cp 140 cpio 142 cproto 148 cron 150 crontab 151
Содержание crosspost 152 cryptdir 153 csplit 153 ctags 155 ctlinnd 160 ctrlaltdel 164 cu 164 cut 167 cvs 169 cvtbatch 173 cxpm 173 date 174 dd 176 debugfs 177 debugreiserfs 182 decryptdir 183 depmod 184 df 185 dialog 186 diff 189 diff3 192 dip 194 display 197 dist 204 dmesg 206 dnsdomainname 207 domainname 208 du 208 dump 209 dumpe2fs 212 dumpkeys 214 e2fsck 215 e2image 217 echo 218 ed 218 edquota 220 egrep 221 eject 222 elm 223 emacs 225 env 228 etags 229 expand 229 expect 229 expire 230 expireindex 232 expireover 233 expirerm 234 expr 235 fastmail 235 fastrm 236 fdformat 237 fdisk 237 fetchmail 239 tg 244 fgrep 244 file 245 filechan 246 find 247 finger 251 flex 252 fmt 256 fold 257 formail 257 forw 260 free 263 frm (nfrm) 263 fsck 264 fsinfo 266 fslsfonts 266 fstobdf 267 ftp 267 ftpcount 275 ftpd 276 ftpshut 277 ftpwho 278 funzip 278 fuser 279 gawk 280 gcc, g++ 282 gdb 285 gdm 287 getfilename 288 getkeycodes 288 getlist 289 getty 290 gimp 291 git 291 gitaction 292 gitkeys 292 gitmount 293 gitps 293 grtrgrep 294 gitunpack 296 gitview 296 gprof 297 grep 298 ■ grephistory 301 grodvi 302 groff 303 grolj4 304 groupadd 304 groupdel 305 groups 305 grpck 306 grpconv 306 grpunconv 306 gs 307 gtk-config 308 gunzip 309 gv 310 gzexe 311 gzip 312 halt 313 head 313 history 315 host 316 hostname 317 httpd 318 hwclock 319 id 321 ident 322 identify 323 ifconfig 324 imake 327 import 328 inetd 332 inews 333 info 335 init 336 innd 337 inndstart 340 innfeed 340 innstat 344 innxmit 345 insmod 346 install 348 ipchains 349 ipchains-restore 352 ipchains-save 353 ispell 353 jobs 356 join 356 kbdmode 357 kbdconfig 358 kbdrate 358 kdm 359 kill 359 killall 360 ksyms 361 kudzu 361 last 362 lastb 363 latex 364 Id 366 Idconfig 369 Idd 370 less 372 lilo 380 listres 382 In 383 loadkeys 384 locate 386 lockfile 387 logger 388
Содержание 5 login 391 logname 391 logrotate 392 look 395 losetup 396 Ipc 397 Ipd 400 Ipq 401 Ipr 402 Iprm 404 Is 405 Isattr 410 Ismod 410 Isof 411 Ispci 415 lynx 416 mail 424 mailpost 431 mailto 431 mailto-hebrew 434 make 435 makeactive 438 makedepend 439 makehistory 440 man 443 mc 445 mcookie 446 md5sum 447 merge 447 mesg 448 messages 449 metamail 449 metasend 451 mimencode 453 minicom 454 mkbootdisk 456 mkdir 457 mke2fs 458 mkfifo 458 mkfontdir 458 mkfs 459 . mkfs.ext3 460 mkinitrd 465 mkisofs 467 mknod 469 mkreiserfs 470 mkswap 472 modinfo 473 modprobe 474 mogrify 476 montage 483 more 491 mount 493 mountd 500 msgfmt 500 msgmerge 501 mt 502 mv 505 named 507 netcfg 508 netstat 509 newmail 512 news.daily 513 newsrequeue 515 nfsd 516 nfsstat 516 nice 517 nl 517 nlmconv 519 nm 520 nnrpd 523 nntpsend 524 nohup 526 nroff 526 nslookup 526 ntsysv 529 objcopy 530 objdump 534 od 540 overchan ' 542 passwd 542 paste 543 patch 544 pathchk 546 pidof 547 pine 547 ping 552 Pnews 553 portmap 555 poweroff 556 pr 556 printenv 558 printmail 559 procmail 559 ps 561 psfaddtable 564 psfgettable 564 psfstriptable 564 pullnews 565 pwck 566 pwconv 567 pwd 567 pwunconv 567 quota 568 quotacheck 568 quotaoff 569 quotaon 569 ranlib 570 rarp 571 rep 572 res 572 rcsclean 575 rcsdiff 576 rcsintro 577 rcsmerge 579 rdist 580 readelf 583 readmsg 585 reboot 586 reconfig 586 redhat-config-date.... 587 redhat-config- keyboard 587 redhat-config- network 589 redhat-config- securitylevel 589 redhat-config- services 591 reiserfsck 592 reiserfstune 594 renice 596 repquota 596 resize 597 restore 598 rev 601 richtext 601 rlog 602 rlogin 605 rm 606 rmdir 607 rmmod 607 rmt 608 mews 609 Rnmail 610 route 612 rpcmountd 615 rpc.nfsd 615 rpm 616 rsh 618 retail 619 rsync 619 rup 622 ruptime 622 rusers 623 rwho 623 sal 624 sa2 624 sadc 624 sar 625 scanlogs 631 scp 631 script 632 sdiff 633 sed 634
6 Содержание sendmail 637 service 641 setkeycodes 643 setserial 643 shlock 646 showaudio 647 showexternal 647 showkey 647 showmount 650 shownonascii 650 showpartial 651 showpicture 651 showrgb 651 shrinkfile 652 shutdown 653 size 654 sleep 655 sort 655 source 657 split 657 splitmail 658 ssh 658 ssh-keygen 661 startinnfeed 663 startx 663 stat 664 statserial 664 strace 665 strip 668 stty 669 su 672 sudo 673 sum 676 SuperProbe 676 swapoff 678 swapon 678 sync 679 sysctl 679 tac 681 tail 681 talk 683 tar 684 tcpdump 687 tee К 688 telnet 689 telnetd 691 time 692 tin 693 top 696 touch 699 tr 700 traceroute 702 trn 704 troff 713 tty 714 tune2fs 714 umount 718 unalias 719 uname 719 uncompress 719 uniq 720 unzip 721 uptime 723 useradd 723 userdel 724 users 724 uudecode 725 uuencode 725 uuidgen 726 vim 726 visudo 729 vmstat 730 w 731 wall 732 wc 733 which 734 who 734 whois 735 write 737 writelog 738 X 738 xbiff 744 xchpboard 745 xdm 745 xev 746 xf86config 747 xfd 747 xfs 749 xgettext 751 xhost 753 xinit 754 xlsclients 755 xlsfonts 756 xmag 758 xmh 758 xmkmf 759 xmodmap 760 xon 762 xpaint 763 xpmroot 764 xrdb 764 xrefresh 766 Xserver 767 xset 769 xsetroot 772 xterm 773 xwd 776 xwdtopnm 777 xwininfo 777 xwud 779 xxgdb 780 yes 782 zcat 782 zcmp 783 zdiff 783 zforce 783 zgrep 784 zipgrep 785 zipinfo 785 zmore 786 znew 787 . (точка) 787 Приложения 788 Приложение I. Допустимые сигналы 788 Приложение II. Имена устройств и их номера 789 Приложение III. Несколько общеизвестных цветов, выраженных в шестнадцатеричном формате 790 Приложение IV. Типы серверов X 790 Приложение V. Формат RCS-файла 790 Приложение VI. Аббревиатуры, встречающиеся в описаниях команд 792 Приложение VII. Файлы, упомянутые в описаниях команд 802 Приложение VIII. Перечень команд с кратким описанием их функций 815
7 Вместо аннотации Linux и Unix. Как это можно сравни гь? Как яркую, многоцветную молодость и мудрую зрелость... А команды были и остаются основой гой и другой системы. Но Unix не стремится к количеству, зрелость предпочитает один классический костюм, но подороже. Документация "классических" версий Unix выглядит более унифицированной, но разве в этом все счастье? Linux экспериментирует: много всякого-разного, порой дублирующегося и не очень удачного. Описание и документация тоже весьма разношерстны, не всегда удачны. Но сколько во всем этом напористости, свежести, юношеского максимализма, желания экспериментировать и щедро делиться своими разработками со всем миром. По фамилиям авторов видно: Linux создает весь мир... Каждая команда, описание которой содержит букву К в правом верхнем углу, вполне может быть отнесена к разряду классических, а это означает, что в Unix имеется аналог, хота н не стопроцентно идентичный. Я постаралась сохранить синтаксис каждой из описанных команд максимально приближенным к имеющимся англоязычным оригиналам, к тому, что вы увидите в случае предупреждений и сообщений об ошибках. Справочник команд не привязан к какой-либо разновидности Linux - Red Hat, Slackware или чему бы то ни было. Он будет полезен также и пользователям классической ОС - Unix. Ведь многие программные продукты имеют версии для Unix, Linux и прочих ОС. А вот и цифры, которые, как известно, убеждают лучше слов. В справочнике команд Unix in plain English, second Edition by Kevin Reichard and Eric Poster-Johnson - перевод издательского дома "Питер"- содержится около 225 команд, в этом издании - свыше 530. И это далеко не предел! Все, так или иначе, не упомянешь, каждую не опишешь. Вполне возможно, что некоторая команда существует в Debian Linux, но отсутствует в Slackware или Red Hat. Хотя это - скорее исключение, чем правило. Большая часть команд присутствует во всех дистрибутивах Linux. Так что же собственно такое команды в Linux? Многие представляют их в виде маленьких примитивных программок, выполняющих несложные стандартные функции. Как бы не так! Помимо таких встречаются очень серьезные пакеты с десятками параметров. Широко известная команда Is выводит содержимое каталога. "Подумаешь", - скажете вы. Да, а вот опций у нее имеется не одни десяток. Никакой диспетчер файлов со своим графическим интерфейсом ничего подобного не отразит. Или другая команда, gcc, вызывает компилятор языка С. Целые книги посвящены описанию ее многочисленных опций. Даже графические интерфейсы - это, по сути, команды. То есть в этой книге описаны способы запуска многочисленных компонентов программного обеспечения. Хотя рассматривать ее лишь как перевод справочного руководства man или info не стоит. Часто содержимое э i их справочных руководств отличается, иногда идентично. Для многих команд вообще не существует man или info, а подчас содержимое этих руководств "неудобоваримо". Поэтому в лом справочнике сделана попытка описать в концентрированном виде как можно больше команд, классических и специфичных, определив их место в иерархии про1раммпого обеспечения Linux.
8 Длинные командные строки раздела II не должны вы jbtBai ь у вас никаких страхов, освоть этот, на первый взгляд, загадочный синтаксис совсем несложно. Многие команды нольюватель не вызывает напрямую, они вызываются посредством дру! их команд. Но и те, н другие полезно знать, ч гобы правильно организовать лриня гую на предприми ин или фирме технологию обработки информации, "не изобретая велосипеда". А самое главное - все это множество команд доступно вам через сценарии оболочек, илн командных процессоров, при при раммированни на множестве современных языков, включенных в дистрибутивы Linux. Зачем дублировать систему и включать эти команды в состав компиляторов? Главное, что вы всегда их можете вызвать из своей программы, задав требуемые опции, проанализировать код завершения, включить в циклы и другие конструкции сценарных языков. Кому-то понадобится написать сценарии обработки файлов или почтовых сообщений, предназначенных для пакетной обработки, и даже включить их в crontab. Другого больше привлекают задачи системного администрирования, третьего - разработка программного обеспечения и системы управления версиями. Существуют десятки команд для любой категории пользователей, на любой вкус или потребности. Сегодня вас интересует одно, завтра - другое. Linux же, как бездонная бочка, чего только в ней не отыщешь! Так что справочник полезно иметь под рукой, всегда найдешь что-нибудь интересующее в настоящий момент. Справочник команд — ваш навигатор в динамичном мире Linux Основная часть книги содержит описания команд, расположенные в алфавитном порядке в разделе "Команды". В разделе "Типовые операции" все команды классифицированы, а сам раздел разбит на подразделы, что дает возможность даже самому неопытному пользователю подобрать необходимый набор с учетом его потребностей, чтобы в дальнейшем подробно ознакомиться с каждой конкретной командой. Классификация команд выполнена по следующим направлениям (см. подразделы): Файлы и каталоги Запуск заданий (команд), управление процессами Клавиатура Шрифты Сети Почта Usenet, InterNetNews(INN) X Window Работа с изображениями Административные задачи Счета пользователей и групп, пароли Разработка программного обеспечения Служебные информационные команды Изложенные команды не привязаны к какому-либо конкретному днслрнбчтшп Slackware или Red Hat. Многие упомянутые про|раммныс пакеты включены в многочисленные версии Unix и других операционных систем. Словом, справочник команд незаменимый помощник новичка и опытного пользователя в многогранном мире Linux.
9 Как работать с командами. Общие положения Все команды справочника представлены в разделе II по алфавигу. Первое предложение каждого описания отражает в сжатой форме специфику команды. В верхнем правом углу можно встретить букву К ("классическая команда") нли В (встроенная в оболочку bash). Так называемые классические команды пришли из Unix, хотя их GNU- версии могут несколько (н даже значительно) отличагься от классического варианта. Сам факт встроенное™ команды в оболочку не является таким уж существенным для большинства пользователей. Хотя в некоторых оболочках могут отличаться или отсутствовать команды, существующие в других оболочках. Описание синтаксиса команды может содержать несколько вариантов. Собственно само описание функций команды может занимать от нескольких предложений до нескольких страниц. Все опции команды описываются последовательно. Причем слева через запятые приводятся варианты опций разных форматов. Справа следует описание каждой опции (или флага, или переключателя, такие термины можно встретить в разных изданиях). Каждая команда, как правило, имеет аргументы, а также опции, последние определяют специфику выполнения команды. Например, рассмотрим команду Is -al dir. Аргумент dir задает каталог, содержимое которого будет выведено. Знак минус предшествует оп- циям(флагам, переключателям) -al, определяющим формат вывода. За флагом, или переключателем, может следовать параметр. Например, выражение -n tracefile, встреченное в командной строке telnet, указывает файл трассировки (.см. команду telnet). Здесь -п является флагом, или переключателем, а параметр tracejile задает собственно имя файла трассировки. Флаг вместе с последующим параметром составляют опцию. Некоторые команды, например ftp, запускают интерактивные программы, в которых, в свою очередь, имеются собственные многочисленные команды, которые также приводятся. Синтаксис команд бывает достаточно сложным. Некоторые команды имеют десятки опций помимо многочисленных встроенных команд. Чтобы это не очень пугало нли отталкивало неопытных пользователей, за описаниями ряда команд следуют примеры, в первую очередь рассчитанные на новичков (объяснение "на пальцах"). Условные обозначения в описаниях синтаксиса Все выражения в квадратных скобках, содержащиеся в описаниях синтаксиса команд, являются необязательными. Все аргументы и параметры, вместо которых должны быть подставлены конкретные значения, отображаются с помощью курсивного шрифта. Применение одной из опций, заключенных в фигурные скобки, обязательно. Варианты наименований одной и той же опции перечисляются через запятые. При этом выражения типа -S, --suffix—su^/fr следует понимать как -S suffix, --svXR\=suffix. Иногда, хотя н редко, родственные опции перечисляются через наклонную черту, отражая аналогичные или близкие особенности функционирования. Вертикальная черта означает "исключающее или". Особо следует отметить трактовку выражений в угловых скобках. Предположим по тексту ветре 1Илось два следующих предложения: "... Указывает каталог spooi-dir для накопления статей. По умолчанию используется <palharticles in inn.conf4..." Эш
10 предложения следует интерпретировать следующим образом: в качестве каталога по умолчанию принят каталог, задаваемый переменной patharticles из конфигурационного файла inn.conf. Значит, прежде всего в эгом файле конфигурации следует отыскать patharticles. Пусть в вашей системе эта переменная установлена в значение /var/spool/ncws/articlcs. По умолчанию в этом каталоге и будут накапливаться статьи новостей. Можно встретить маршруты такого вида: SHOME/.aumixrc. Первая часть маршрута определяется содержимым переменной окружения НОМЕ, например, может принимать значение /homc/misha. Цифра 1, дабы отличить ее от строчной буквы I ("эл"), помечается в тексте следующим образом: (Th Как подобрать необходимые команды К сожалению, даже команды по одной тематике могут быть разбросаны в разных концах справочника, так как их наименования, увы, начинаются с разных букв алфавита. Хотя иной раз англоязычные наименования команд бывают очень информативны. Поэтому начинать поиск команд следует с раздела I "Типовые операции". Каждая команда обязательно встречается в одном из подразделов раздела I, хотя может находиться сразу в нескольких местах. Например, команда cat позволяет выполнить просмотр файлов, с другой стороны, она также осуществляет конкатенацию (слияние) файлов. Предположим в процессе разработки вам понадобилась система управления версиями. Пройдя в разделе I по маршруту Разработка программного обеспечения ■* Системы управления версиями вы обнаружите подходящие команды, далее отыскиваете их в разных концах раздела II. В описаниях команд встречаются ссылки на приложения, расположенные в конце справочника. N/N Краткое содержание приложения I Описание сигналов Linux II Наименования некоторых файлов устройств Ш Шестнадцатеричные выражения основных цветов IV Виды Х-серверов V Система управления версиями: RCS V] Аббревиатуры, встречающиеся в описаниях команд VII Файлы, упомянутые в описания команд VIII Перечень команд в алфавитном порядке с кратким описанием их функций
11 I. Типовые операции I Создание файла: каталога: FIFO (именованного канала): специального файла устройства: ссылок: Файлы и каталоги touch mkdir I Навигация по каталогам определение местонахождения: смена каталога: вывод содержимого: Имена файлов определение базового имени файла: запрос имени в указанном формате: проверка переносимости имен в другие системы: Типы файлов, владельцы, полномочия определение типа файла: установка владельца и группы для файла (каталога): установка полномочий и атрибутов: проверка доступа, изменение времени доступа: mkfifo mknod in pwd cd, chroot Is, Isattr, git basename getfilename pathchk file chown, chgrp chmod, chattr access, touch распечатка дескрипторов файлов в удобном для чтения формате: Stat Просмотр содержимого файлов и их дампов: начала файла: конца файла: упакованных и сжатых файлов: cat, tac, rev, less, more, od, gitview head tail zcat, zmore
12 I Типовые операции файлов в форматах PostScript н PDF: gv в формате HTML: lynx в формате nroff: COlcrt проверка правописания: ispell Я Поиск файлов: find, locate в файлах: grep, fgrep, egrep, flex, look, gitgrep в архивах: zgrep, zipgrep I Сравнение файлов и включение отдельных изменений в оригинал: cmp, comm, diff, diff3, sdiff, zcmp, zdiff, merge Щ Объединение файлов: Cat, join, paste ШУдаление файлов и каталогов: rm, fastrm, rmdir частей текста из файлов: uniq, colrm. cut. strip Д Обработка файлов замена символов и фильтрация: expand, col форматирование: fmt, troff, groff, latex, fold, column, pr разбивка на части: split, CSplit вывод строк в обратном порядке: rev нумерация строк: nl преобразование: grodvi, tr сортировка: sort обрезка по границам строк: shrinkfile : Редактирование текстовых файлов: ed, emacs, sed, vim предварительная подготовка: Ctags, etags Копирование и установка атрибутов файлов: ср, dd, install Перенос или переименование: mv Щ Передача файлов по сети: ftp, rep, scp, rsync, rdist
I. Типовые операции 13 В Хранение файлов, архивы упаковка, распаковка. ar, bzcat, bzip2, bzip2recover, bunzip2, сжатие, просмотр архивов: compress, gzexe, gzip, gunzip. uncompress, unzip, zipinfo, gitunpack просмотр содержимого архивных файлов: zcat, zmore фильтрация: поиск в архивных файлах: преобразование форматов: В Дублирование, восстановление: В Проверка целостности файлов подсчет количества байт, символов, строк: контрольных сумм: шифрование/дешифрованне: ВПечать файлов: заголовка: форматирование для печати: groff-драйвер печати: В Нахождение открытых процессом файлов: В, Блокирование - создание lock-файлов: funzip zgrep zforce, znew dump, restore, tar, cpio wc cksum, md5sum, sum cryptdir, decryptdir Ipq, Ipr, Iprm banner РГ grolj4 Isof lockfile, shlock I Интегрированные инструменты пакет интерактивных утилит GIT: git, gitview, gitrgrep, gitaction, gitunpack менеджер файлов: mc Запуск заданий (команд), управление процессами В Определение местонахождения команды: which В Предварительное создание очередей заданий: crontab, atq, atrm
14 I Типовые операции I Запуск команд из указанного файла: с помощью псевдонимов: в установленное время: периодически когда позволяет загрузка системы: при отключении управляющего терминала: в измененном окружении: source alias, unalias at, cron anacron batch nohup env I Предварительный подсчет ресурсов, используемых командой: time | Оболочки, или командные процессоры: ash, bash, rsh, ssh I Управление процессами установка приоритета: управление и манипулирование процессами: запуск прерванного процесса в фоне: в приоритетном режиме: создание задержки указанной длительности: дублирование вывода процесса: взаимодействие между процессами: попытка создать lock-файл и записать в него PID: нахождение РГО запущенной команды: завершение процесса: nice, renice top bg fg Ш Отобра архитектуры компьютера: сообщений начальной загрузки Linux: информации о системе: списка работающих процессов: фоновых и приостановленных процессов: необходимых разделяемых библиотек: открытых процессом файлов: PID, использующих указанные файлы, еокеты, файловые sleep tee mkfifo shlock pidof kill, killall arch dmesg uname ps, gitps, top jobs Idd Isof системы: fuser
I. Типовые операции 15 переменных окружения: учетной информации о жизнедеятельности системы: ежедневной деятельности системы: используемых памяти: времени ЦП: нагрузки на систему: очистка экрана терминала: Щ Протоколирование команд и всего вывода на экран: ^| Информация о режиме клавиатуры: таблицах трансляции клавиатуры: последовательности нажимаемых клавиш: Драйвер клавиатуры дамп таблиц трансляции: загрузка или модификация таблиц трансляции: Таблица ядра, транслирующая скан-код в код клавиши загрузка таблицы: печать таблицы: проверка кодов нажимаемых клавиш: printenv sar, sadc sa1,sa2 free, vmstat ascpu asload clear history, script Клавиатура kbd_mode dumpkeys gitkeys dumpkeys loadkeys setkeycodes getkeycodes showkey В Конфигурирование и настройка системной клавиатуры конфигурирование: kbdconfig, redhat-config-keyboard переустановка скорости повтора и задержки клавиш: kbdrate Ш Изменение раскладки клавиатуры в X : xmodmap
16 I Типовые операции Ш Загрузка шрифта в генератор символов EGA/VGA: Н Таблица символов Unicode включение символов Unicode в шрифт консолн: получение таблицы символов Unicode из шрифта консоли: удаление символов Unicode нз шрифта консолн: Щ Х-шрифты отображение шрифтов, поддерживаемых сервером шрифтов: инсталлированных шрифтов: символов указанного шрифта: компиляция шрифтов для Х-сервера и сервера шрифтов: генерация шрифтов в формате BDF нз шрифтов Х-сервера: создание в каталоге индекса файлов шрифтов: Шрифты consolechars psfaddtable psfgettable psfstriptable fslsfonts xlsfonts xfd bdftopcf fstobdf mkfontdir P[tcp/ip конфигурирование сетевого клиентского хоста: redhat- интерфейса: соединения: информация по сетевым соединениям: проложение маршрута к дистанционной системе: проверка активности соединения: обнаружение неполадок маршрутизации: отображение Ethernet-адреса по данному IP-адресу: IP-адреса по данному Ethernet-адресу: I Подключение через последовательные линии РРР-иодключение через сценарий обмена компыотер-модем: поддержка 1Р-110дключсний по телефонным каналам: программа коммуникации через последовательные линии: подключение к другой системе через звонок на терминале: Сети config-network ifconfig netcfg netstat route ping traceroute arp rarp chat dip minicom cu
I Типовые операции 17 Демоны базовых серверов Wcb-ссрвер Apache: демон службы DNS: демон INN (службы новостей): демон сервера NNTP (службы новостей): суперсервер Internet: демон конвертации номеров программ RPC в номера TCP и UDP портов для NFS: демон автомонтировання файловых систем NFS: демон файл-сервера FTP: демон обслуживания протокола TELNET: Н Системные имена, службы имен доменов вывод нлн установка системного имени машины: вывод доменного имени DNS: httpd named innd nnrpd inetd определение адреса указанного имени через DNS: просмотр информации об узлах Internet через сервер DNS: вывод нлн установка доменного имени NIS/YP: поиск официальной контактной информации: portmap amd ftpd telnetd hostname dnsdomainname nslookup host domainname whois £nfs программа воплощения пользовательского уровня службы NFS: rpc.nfsd обслуживания запросов клиентов на монтирование: rpc.mountd отображение состояния сервера NFS: статистики системы NFS: запрос автомонтировання файловых систем: showmount nfsstat amq, autofs, automount ■ FTP, Telnet информации о процессах пользователей FTP-ссрвсра: текущем числе пользователей: пересылка файлов: закрытие FTP-сервера в заданное время: интерфейс подключения на протоколе TELNET: ftpwho ftpcount ftp ftpshut telnet
18 I. Типовые операции В r-команды, сеансы на дистанционных узлах создание пары ключей аутентификации для ssh: ssh-keygen копирование файлов: rep, rsync, rdist, Sep запуск терминального сеанса на дистанционном узле: дистанционной оболочки: дистанционного клиента (через rshj: отображение состояния узлов локальной сети: информации о пользователях локальной сети: сетевого трафика: Н Брандмауэры администрирование 1Р-брандмауэров: сохранение цепочек 1Р-брандмауэров: восстановление цепочек 1Р-брандмауэров: rlogin rsh, ssh rstart rup, ruptime rusers, rwho tepdump ipchains ipchains-save ipchains-restore графический клиент'настройки брандмауэра: redhat-config-securitylevel Почта Ш Создание и отправка почтовых сообщений простейший интерфейс создании сообщений: Сотр создание сообщений, включающих другие сообщения: forw переформатирование почты (и статей): formail разбивка на части MIME-сообщения: splitmail создание ауднофрагмента, включаемого в сообщение: audiocompose быстрый интерфейс отправки: fastmail рассылка сообщения по дополнительным адресам: dist отправка мультимедийной почты: mailto, metasend аудиосообщения в качестве почты: audiosend почты в формате Hebrew: mailto-hebrew запись телефонограммы в виде почтового сообщения: answer двухсторонний обмен сообщениями: talk ■ Мониторинг и обработка поступившей почты уведомление о поступлении почты: xbiff. newmail подсчет сообщений, появившихся в ящике или папке: messages
I. Типовые операции 19 создание списка тем и адресов полученной почты: извлечение сообщений из почтовой папки: получение почты от дистанционных почтовых серверов и переназначение ее локальным системам доставки почты: frm readmsg fetchmail почтовый процессор обработки прибывшей почты: procmail поддержка отображении мультимедийной почты на локальном сайте: metamail отображение почты не в формате ASCII: в формате "richtext": проигрывание аудиосообщений: вывод полученного изображения: тела сообщении, включенного по ссылке: слиииис отдельных частей сообщения: конвертация потоков байт в стандартные форматы кодирования н наоборот: кодирование двоичных файлов в формате ASCII: форматирование почты для печати: И Транспортный почтовый агент: Интегрированные почтовые системы: Н Межтерминальный обмен сообщениями: shownonascii richtext showaudio show/picture showexternal showpartial mimencode uuencode, uudecode printmail sendmail elm, mail, pine, xmh write, wall, talk Usenet, InterNetNews I Сервер новостей демон INN, поддерживающий NNTP-подиитки: innd, inndstart управление демоном INN: Ctlinnd создание ссылок на входящие статьи: crosspost одновременная подпитка статьями нескольких сайтов: innfeed получение новостей через UUCP-подключение: rnews подготовка ресурсов для innfeed: Startinnfeed вытягивание новостей с одной машины на другую: pullnews конечный интерфейс записи файла для INN: filechan. buffchan демон NNTP для читателей новостей: nnrpd получение информации от NNTP-сервсра: getlist
20 I. Типовые операции В Клиенты службы новостей программы чтении новостей: экранно-ориентнрованнын инструмент поддержки сообщений (для INN и e-mail): В Передача подготовленных статей серверу новостей подготовка и отправка подготовленных статей локальному серверу для последующего распространения: tin, trn pine mews Pnews статен новостей (через inews): статей Usenet на дистанционный сервер NNTP: innxmit naNNTP-сайт: nntpsend подпитка группы новостей почтовыми сообщениями для передачи серверу новостей: mailpost В Уведомление о получении новостей отправка по почте уведомлений о получении: Rnmail В Подготовка новостей в сетях UUCP подготовка пакета новостей для указанного узла: конвертации пакетного файла Usenet в формат INN: batcher cvtbatch перезапись пакетных файлов после аварии системы (через innd): newsrequeue В Ведение БД статей обновление БД статей по прибытии новых: перестройка файла active: history: overchan makeactive makehistory отображение имен файлов статей по идентификаторам сообщений: grephistory удаление старых статей: expire, expirerm элементов из БД обзора новостей: expireover expireindex элементов индекса новостей: В Администрирование добавление элементов в журнал INN: writelog подведение итогов по информации журналов INN: scanlogs отчет состояния, удаление старых статей, обработка журналов, их архивация, перенумерация файла active: news.daily
I. Типовые операции 21 информация об оперативном режиме сервера новостей, состоянии журналов и Jock-файлов, по дисковой памяти: innstat X Window Запуск сеанса работы X: xinit, startx, xdm альтернативные менеджеры дисплеев, заменяющие xdm в GNOME: gdm в KDE: kdm управление доступом пользователей к Х-ссрвсру: xhost создание "cookies" для использования с системой авторизации: mcookie запуск Х-приложений на дистанционной системе: отображение информации о X-сервере: запуск сервера дисплея: распознавание инсталлируемого видеооборудования: настройка оборудования: ХОП программных компонентов: преобразование файла старого формата Xconfig в файл XF86Config: чтение и конвертация в исходный вид откомпилированной БД RGB-цветов: xdpyinfo Xserver SuperProbe xf86config xset reconfig установка фоновых атрибутов: фоновых изображений: вывод настроек главного окна одного из экранов: информации об указанном окне: изменение раскладки клавиатуры: Сервер шрифтов запуск сервера шрифтов: отображение информации о сервере шрифтов: поддерживаемых сервером шрифтов: инсталлированных шрифтов: символов указанного шрифта: создание в каталоге индекса фанлов-шрифтоп: добавление, удаление и распечатка каталогов по маршруту серпера шрифтов: компилятор шрифтов для Х-сервсра и серпера шрифтов: Showrgb xsetroot xpmroot xrdb xwininfo xmodmap xfs fsinfo fslsfonts xlsfonts xfd mkfontdir chkfontpath bdftopcx
22 I. Типовые операции создание шрифтов в формате BDF из шрифтов Х-сервсра: Запуск fstobdf клиентских приложений: эмулятора терминала: приложения, определяющего размер окиа xtcrm: графического редактора: перерисовки экрана: увеличение части экрана: вывод информации о событиях окиа: содержимого буфера(сНрЬоаг<1): ресурсов приложений и виджетов: Захват изображения: последующий вывод изображения на экран: преобразование изображения в мобильный сетевой формат: Электронная почта чтение и отправка e-mail: уведомление о поступлениях почты: xlsclients xterm resize xpaint xrefresh xmag xev xclipboard appres, listres import, xwd xwud xwdtopnm xmh xbiff Щ Графические версии программ настройки задание уровней функционирования системных служб: redhat-config-services настройкадатыивремени: redhat-config-date redhat-config-keyboard redhat-config-network конфигурирование системной клавиатуры: конфигурирование клиентского сетевого хоста: задание уровня безопасности и правил для брандмауэра: __ redhat-config-securitylevel Работа с изображениями Щ Захват изображения: import, xwd последующий вывод изображения на экран: XWlld Манипулирование (ImageMagick) описание формата и характеристик: identify независимым вывод: display
I. Типовые операции 23 трансформация: mogrify объединение: combine, composite анимация: animate монтаж: montage захват: import В Преобразование изображений из ANSI-формата в ХВМ: atobm из ХВМ в ANSI-формат: bmtoa из BMP в PPM: bmptoppm в мобильный сетевой формат PNM: xwdtopnm из одного формата во многие другие: convert проверка корректности файлов ХРМ: Схрт Щ Графические редакторы: bitmap, gimp, xpaint Административные задачи Н Загрузка и вход в систему загрузчик Linux: lilo создание загрузочной дискеты: mkbOOtdisk образа начального RAM-диска для предварительно загружаемых модулей ядра: mkinitrd инициализация процессов, регистрация в системе: init, getty, login запуск и задание уровней функционирования системных служб: ntsysv, service, chkeonfig, redhat-config-services информация о регистрациях пользователей: users последующая распечатка сообщений начальной загрузки Linux: dmesg Н Завершение работы Linux останов: shutdown, halt перезагрузка: reboot Ctrlaltdel отключение питания: poweroff Разбивка диска на разделы: fdisk
i Типовые операции Управление файловыми системами создание файловой системы (конечный интерфейс): проверка и исправление: отладка файловой системы ext2/3: печать основных блоков ext2/3: создание образа файловой системы: I Вторая расширенная файловая система подготовка файла для создания внутри него файловой системы: создание файловой системы cxt2: файловой системы cxt3: файловой системы RciscrFS: проверка файловой системы cxt2/3: файловой системы RciserFS: отладка файловой системы cxt2/3: файловой системы RciserFS: изменение параметров файловой системы схг.2/3: файловой системы RciscrFS: mkfs fsck debugfs dumpe2fs e2image losetup mke2fs mkfs.ext3 mkreiserfs e2fsck reiserfsck debugfs debugreiserfs tune2fs reiserfstune Область своппинга создание: активизация: деактивизация: Обновление версий программного обеспечения инсталляция и управление пакетами: заплаты: Поддержка файлов конфигурации системы редактирование пользовательских crontab-файлов: редактирование sudocrs: редактирование двоичных файлов квот: распространение файлоп конфигурации по хостам: mkswap swapon swap off rpm patch crontab visudo edquota rdist. rsync
I. Типовые операции 25 Щ Ядро, загружаемые модули распечатка списка мгружаемых модулей ядра: получение информации о модуле ядра: отображение экспортируемых символов (идентификаторов) ядра: поддержка описания зависимостей для загружаемых модулей: загрузка модулей из списка, созданного depmod: включение загружаемых модулей в ядро: удаление модулей из ядра: распечатка if изменение параметров работающего ядра: О Внешние устройства, конфигурирование и управление обнаружение и конфигурирование новых устройств: информация о РС1-устройствах терминалы установка режимов, скорости и линий подключения: изменение и распечатка установок: отображение имени устройства текущего терминала: управление доступом к терминалу: последовательные порты конфигурирование: получение информации Ismod modinfo ksyms depmod modprobe insmod rmmod sysctl kudzu Ispci getty stty _ tty mesg setserial statserial конфигурирование системной клавиатуры: kbdeonfig, redhat-config-keyboard распознавание видсооборудования: SuperProbe настройка видеооборудования: xf86config CD создание образа файловой системы для записи на компакт-диск: mkisofs запись информации или аудиоданных на компакт-диски: Cdrecord воспроизведение аудио компакт-дисков: Cdp нахождение сбойных блоков на диске: bad blocks магнитная лента управление локальными и дистанционными устройствами: mt. rmt форматирование дискет: fdformat создание специальных файлов: mknod, mkfifo создание файла-образа ISO9660: mkisofs подключение/отключение усгрпйств монтнрованис/дсмонтиропаннс устройств: mount, umotint
26 I. Типовые операции моншрованне без указания типа файловой системы: Cjitmount привязка loop-устройства к обычному файлу: losetup информация о свободных областях смонтированного устройства: df отчет об используемом дисковом пространстве: du замена носителей сменных устройств: eject Н Буферизация запись содержимого буферов на диск: bdflush, sync Печать демон построчной печати: Ipd управление системой построчной печати: 1рс Квотирование включение/отключение квотирования: quotaon, quotaoff распечатка квот пользователей и групп: quota редактирование квот: edquota проверка соблюдения квот: quotacheck подведение итогов квотирования для файловой системы: repquota Журналирование создание элементов в заданном системном журнале: logger ротация журналов: logrotate Щ Служба времени вывод/установка временных переменных ядра: adjtimex системного времени и даты: date аппаратных часов: hwclock распечатка календаря: Cal В Учетные средства информация о загрузке системы: asload, uptime памяти: free, vmstat накопление информации о жизнедеятельности сие темы: Sat, sadc накопление и ежедневный от чет о деятельности сне темы: S31, Sa2
I. Типовые операции 27 Счета пользователей и групп, пароли Вход в систему регистрация в системе: login изменение оболочки: Chsh возможность стать другим пользователем: SU, sudo отображение регистрационного имени_текущего пользователя: logname информации о работающих в системе: who, finger, users, ас last, w попыток безуспешных регистрации: lastb Пользователи и группы изменение имени пользователя и вывод информации о нем: Chfn пароля и информации о нем: passwd, chage оболочки регистрации: chsh добавление пользователей и групп: adduser, useradd, groupadd удаление пользователей и групп: userdel, groupdel информация о группах, в которые входит пользователь: groups создание уникального значения UUID на всех системах: uuidgen распечатка подлинных и действующих UID и GID: id Теневые пароли создание файла теневых паролей из обычного файла паролей и из теневого, если он существует пользователей: pwconv групп: grpconv проверка целостности файла паролей пользователей: pwck групп: grpek обновление главного файла паролей пользователей: pwunconv групп: grpunconv Разработка программного обеспечения Компиляторы, препроцессор, оболочки компиляторы: as, gawk (awk), gcc. g++, gs препроцессор: СРР оболочки, или командные процессоры: ash. bash, rsh, ssh
28 I Типовые операции Поддержка частей большой программы автоматическое определение частей большой иро!раммы, подлежащих повторной компиляции: создание зависимостей в make-файлах: интерфейс препроцессора С к утилите make: автоматическая генерация make-файла из Imake-файла: Переносимость программ на языке С создание переносимых файлов сообщений из С-программ: создание машинно-зависимого файла из переносимого: слияние двух мобильных файлов: make makedepend imake xmkmf xgettext msgfmt msgmerge Средства отладки создание файлов тегов для исходных кодов: Ctags, etags трансляция программных адресов в имена файлов и номера строк: addr2line декодирование низкоуровневых имен (меток ассемблера) в имена функций: генерация прототипов функций для файла на языке С: отладчик GNU: Х-интерфейс к отладчику gdb: Объектные файлы компоновка объектных файлов: вывод информации объектных файлов: получение сведений о GTK+: распечатка символов (идентификаторов) объектных файлов: установка ссылок на разделяемые библиотеки (для инсталляции новой DLL): копирование содержимою одних объектных файлов в другие: удаление всех идентификаторов: информация о размерах секций объектного файла: об объектных файлах в формате ELF: о необходимых разделяемых библиотеках: генерация индексов объектных файлов, хранящихся н архиве: конвертация объектного кода в код формата NI.M : C++filt cproto gdb xxgdb Id objdump gtk-config nm Idconfig objeopy strip size readelf Idd ranlib nlmconv
I. Типовые операции 29 Выполнение создание профиля исполнения для программ на языках С, Pascal, Fortran77: Qprof трассировка команды (программы): Strace вывод строк текста на экран: echo Ш Программируемые диалоги: expect, yes Н Системы управления версиями RCS: ci, со, res, rcsintro, rcsclean, rcsdiff, rcsmerge, ident, rlog CVS: cvs H Виджеты создание виджетов: dialog вывод списка ресурсов: listres получение сведений о библиотеке GTK+: gtk-config В Генерация программ создание синтаксических анализаторов: bison создание программ, выполняющих действия по найденному образцу: flex создание программ, выполняющих вычисления: be, ехрг Служебные информационные команды Н Описание команд: info, man контекстный поиск ключевых слов в описаниях команд: apropos поиск местоположения команд (исполняемых файлов и сценариев): which
30 II. Команды ас - выводит статистику о продолжительности подключения пользователей к системе. К Синтаксис ас [-d][-y][-pH-f filename]l-a]l- -complain][--reboots) Команда ас печатает отчет о продолжительности (в часах) работы зарегистрированных в системе пользователей, который базируется на записях типа logins/logouts текущего файла /var/log/wtmp. Данный файл обслуживают init и login. Ни команда ас, ни login не создают /var/log/wtmp; если он не существует, учет вообще не производится. Для ведения учета достаточно создать файл нулевой длины. GNU ас работает чуточку "интеллектуальнее", чем команды ас в других системах; вывод команды ас в разных Unix также несколько отличается. Опции -d Печатает итоги за каждый день и общий итог. -р Печатает продолжительность подключения каждого пользователя вдобавок к общему итогу. -f filename Читает информацию из файла по именп/Непате вместо системного файла /var/log/wtmp. —complain В случае возникновения проблем с файлом /var/log/wtmp сообщает об ошибке. - -reboots He создает во время перезагрузки записи типа reboots. Некоторые пользователи продолжают оставаться зарегистрированными в системе и в этом случае. Команда ас автоматически вычисляет время между регистрацией и возникновением reboot-записи для каждого пользователя. Если необходимо учесть такое время, включите этот флаг. -а При подведении итогов печатаются ежедневные записи вместо того, чтобы пропускать дни, когда в системе не наблюдалось регистрации. Без этой опции такие дни учитываются в следующий день, копа отмечались случаи регистрации пользователей. -у Печатает год подведения итогов. Пример Ниже приведен результат иыполпенпя команды ас -d:
II. Команды 31 Jan 26 Jan 30 Feb 12 Feb 13 Feb 20 Feb 27 Feb 28 Feb 29 Наг 1 Наг 5 Наг 9 Наг 10 Наг 11 Наг 12 Наг 13 Наг 14 Наг 15 Наг 16 Наг 17 Наг 18 Наг 19 Today total total total total total total total total total total total total total total total total total total total total total total 0. 4. 5, 5. 12. 2. 1. 15. 0. 19. 6. 1. 4. 64. 8. 1. 6. 3. 7. 13. 0. 4. .01 .21 .53 .45 .95 .86 .95 .21 .56 .40 .38 .44 .98 .58 .16 .25 .53 .18 .80 .83 .00 .61 3CCGSS - опреде -ет, доступе i ф."i Синтаксис access -mode file Программа успешно завершается, если файл по имени file доступен в указанном режиме -mode. Комбинация одной или более букв rwx, где г предназначена для чтения, w - для записи, х - для выполнения, определяет задаваемый режим. Разница между командами access и test состоит в том, что вторая команда анализирует биты полномочий, тогда как первая использует системный вызов access. Разница становится существенной, если рассматриваемый файл по имени file принадлежит к файловой системе, монтируемой только для чтения. Опции Поддерживаются следующие дополнительные опции: —help Выводит краткое описание опций и завершает работу программы, —version Выводит информацию о версии программы и завершает ее работу. Примеры Две проверки - успешная и неудачная - приведены ниже: $ access -rwx /mnt/floppy/arq.doc $ $ access -rwx-w- /mnt/floppy/arq.doc access: Invalid HODE. $
32 И Команд addr2line конвертирует программные адреса в имена файлов и номера строк. Синтаксис addr21ine [-b bfdname\—target=bfdname] [-C|--demangle] [-е filename]--exe=filename][-f|—functions][-s|—basenames) [ —HI—help)(-V|—version][addr addr ] Большие прикладные программы могут содержать сотни файлов исходных программ. Компиляция и последующая обработка таких программ могут быть сложными процессами и сопровождаться многочисленными ошибками. Утилита addr2line входит в состав программ разработки GNU binutils. С помощью аргумента addr задается адрес исполняемого файла. Утилита addr2line работает в двух режимах. В первом из режимов шестнадцатеричные адреса указываются прямо в командной строке, взамен для каждого адреса выводится имя исходного файла и номер строки. Во втором из режимов addr2!ine считывает адреса прямо со стандартного ввода. В этом режиме утилита может использоваться в конвейере для динамического конвертирования выбранных адресов. Формат вывода выглядит следующим образом: вмя-фавпа:номер-строки. Причем для каждого адреса имя файла и номер строки печатаются на отдельной строке. Помимо имени файла в случае задания опции -f выпечатывается также имя функции, содержащей данный адрес. Если имя файла или функции не может быть определено, addr21ine распечатывает на их месте два вопросительных знака. Если не может быть определен номер строки, addr21ine печатает 0. Опц -b bfdname, --iarget-bfdname Задает формат объектного кода для объектных файлов. -С, --demangle Преобразует низкоуровневые имена (идентификаторы) в высокоуровневые имена, ранее определенные пользователем. Чтобы сделать имена функций C++ читаемыми, удаляет некоторые символы подчеркивания, специально предусмотренные системой. -е filename, —e\e=filename Указывает имя исполняемого файла, для которого выполняется трансляция адресов. По умолчанию принимается a.out. -f, —functions Выводит имена функций. -s, —basenames Выводит собственно базовое имя файла. -Н, —help Выводит краткие сведения об опциях npui рам мы и ивершаст ее выполнение. -V, —version Выводит информацию о Персии upoi раммы и lauvpiuac 1 ее выноиненне
II. Команды 33 Ниже перечислены форматы объектных кодов, поддерживаемых addr2line: elf32-i386 symbolsrec a.out-i386-linux tekhex elf32-little binary elf32-big ihex srec trad-core adduser adjtimex псевдоним команды useradd. - выводит или устанавливает временные переменные ядра. Синтаксис (о вн е опции) adjtimex l—print][—tick val]{—frequency newfreq] [—compare [=count] J [—maxerror vai][—esterror val\{—help] adjtimex - это препроцессор пользовательского уровня для программы adjtimex-syscall, хотя существует и системный вызов adjtimex. Эта программа дает низкоуровневый доступ к переменным ядра, определяющим время. Но для компьютера, подключенного к Internet, связанного с точным осциллятором или радиочасами, наилучшим способом регулировки времени является xntpd (демон синхронизации времени с использованием сети и/или радиоприемников). Любой может распечатать временные переменные, но только суперпользователь может менять их. Если компьютер подключен к сети, вы можете запустить xntpd хотя бы на несколько часов и с помощью команды adjtimex —print узнать об установленных значениях tick и freq. Опции могут вводится с одним или двумя минусами. Основные опции - -print Печатает текущие значения временных переменных ядра. --tick val Устанавливает количество микросекунд, которое должно быть добавлено к каждому tick (тику) прерывания ядра. Микросекунда - это миллионная часть секунды, учтя, что секунда - это 100 ticks (тиков), получаем, что значение val равно 10000. Увеличение val на единицу увеличивает скорость системных часов примерно на 100 ррт, или 8.64 секунды, за день. Значение параметра val должно лежать в диапазоне 9000-11000. --frequency newfreq Устанавливает смещение частоты системных часов в величину, заданную newfreq. Значение newfreq должно находиться в диапазоне между -6553600 - +6553600 (-lOOppm - +I00ppm).
34 II Команды - - compare[=сони/] Периодически сравнивает системные часы с часами CMOS. После первых двух вызовов печатает значения tick и смещения частоты, которые приводят системные часы в соответствие с часами CMOS. Интервал между сравнениями составляет 10 секунд. Необязательный параметр представляет собой количество сравнений. Если задается этот параметр, то наличие знака равенства обязательно. —maxerror val Устанавливает максимальную ошибку (usee). —esterror val Устанавливает предполагаемую ошибку (usee). Максимальная и предполагаемая ошибки не используются ядром; они только доступны пользовательским процессам через системный вызов adjtimcx. —help Печатает опции программы. Прг ер Предположим, что ваши системные часы "спешат" на 8секунд в сутки. Вы можете установить значение опции —tick в 9999. Но тогда вы все еще теряете 0.64 секунды за день. Не забывайте, что выражение --tick 10000 --frequency 6553600 - это примерно —tick 10001 —frequency 0. Чтобы скорректировать остаток (0.64 секунды), достаточно установить смещение частоты в значение 485452. Таким образом получаем: adjtimex —tick 9999 —freq 485452 Команда adjtimcx манипулирует системными часами только до тех пор, пока в компьютере работает блок питания. Для установки и регулировки часов CMOS используется команда clock. 3II3S - назначает псевдоним для длинной команды. В Синтаксис alias [abbrev= command] Определяет аббревиатуру abbrev для длинной команды command, что позволяет облегчить набор командных строк с многочисленными опциями. Эта команда набранная без аргументов, распечатывает текущий список псевдонимов (аббревиатур) Сам аргумент command приходится заключать в одинарные кавычки. Команда alias встроена в оболочку bash. П имер $ alias ff='find . -name gjj -print' $ Далее для запуска достаточно набрать только ГГ.
II. Команды 35 ЭГПа - автоматически монтирует файловые системы. Синтаксис amd -H amd {-F conf-file] amd [-nprvH](-a temporary_directory][-c duration][-d domain] [-k kernel-arch] [-1 logfile][-o op_sys_ver][-t interval, interval] [~v interval]]-^ log-options][-y YP-domain][-F conf-file] [-0 op_sym_name][directory map-name [-map-options]] Иногда монтирование абсолютно всех типов файловых систем, к которым необходимо обеспечить доступ, может оказаться расточительным из-за большого количества томов или из-за значительного времени, которое требуется на их подключение при начальной загрузке системы. Целесообразно использовать программу, автоматически подключающую и отсоединяющую тома NFS. В операционной системе Linux самым распространенным средством автоматического монтирования является amd. Демон amd автоматически монтирует файловые системы всякий раз, когда становится доступным какой-нибудь файл или каталог файловой системы. Причем файловая система автоматически демонтируется, когда становится неактивной. С помощью -тар-options передаются специфические опции файловой системы. Основные опции -a temporary directory Указывает альтернативное расположение для реальных точек монтирования. По умолчанию принимается /а. -с duration Указывает продолжительность в секундах, определяющую процесс поиска имени. По умолчанию - 5 минут (300 секунд). -d domain Задает локальное имя домена. -k kernel-arch Задает архитектуру ядра. -1 logfile Указывает файл, в котором регистрируются процессы монтирования и демонтирования. Если параметр logfile установлен в значение syslog, то сообщения будут направляться системному демону регистрации. -п Нормализует имена узлов перед использованием, транслируя псевдонимы в официальные имена. -о op_sys_ver He принимает во внимание встроенный номер версии операционной системы. Иногда в целях совместимости требуется такая поправка. -р Выводит на стандартный вывод PID демона amd, который можно .итем сохранить в файле. -г Перезапускает сущест вующие подключения. Демон amd сканнр\ ex таблицу монтирования, чтобы определи п., какие файловые системы смон-
36 II Команды тированы в настоящее время. И как только одна из файловых систем сможет стать автоматически монтируемой, amd унаследует ее -t interval.interval Указывает интервал в десятых долях секунды между попытками NFS/R.PC/UDP. По умолчанию принято значение, равное 0.8 секунды. Второе значение (после точки) меняет счетчик переданных попыток. -v Выводит версию программы и дополнительную информацию по конфигурации в стандартный файл ошибок. -w interval Указывает интервал в секундах между попытками демонтировать файловые системы, которые превысили свои возможности. По умолчанию принимается значение, равное 2 минутам. -х log-options Указывает опции регистрации в виде списка, компоненты которого разделены запятыми: fatal (фатальная), error (ошибка), user (пользователь), warn (предупреждение) и т.д. -у YP-domain Задает альтернативный домен NIS, из которого извлекаются таблицы (maps) разрешений NIS. По умолчанию берется системное имя домена. Эта опция игнорируется, если не заложена поддержка NIS. -F conf-file Определяет файл конфигурации amd. Обычно файл по имени amd.conf содержит директивы для каждой опции командной строки. Директивы конфигурационного файла, заданного рассматриваемой опцией, будут выполняться после всех других опций, невзирая на его фактическое местоположение в командной строке. -Н Печатает все опции программы. -О opsymname Не принимает во внимание действительное имя операционной системы. Иногда в целях совместимости требуется такая поправка. amd сам управляет подключением, как и сервер NFS, к каждому из заданных каталогов directory. Демон amd поддерживает просмотр заданных каталогов, используя таблицу разрешения, имя которой указывается аргументом map-name. ЗПГ1С| - инструмент, запрашивающий автоматическое монтирование. Синтаксис (основные ции) amq [-fmpsuvTU][-h ftostname][-1 logfile]{-x log-options]ldirectory] Запуск amq - это самый простой способ определения текущего состояния чемона amd. Связь организуется через RPC. Текущим протоколом поддерживаются три режима работы. Основные опции -f 11редлагает автомонтнровщнку amd запомни п. к шш.
II. Команды 37 -h hostname Задает альтернагивный узел для запросов. По умолчанию исполыуется локальный узел. -1 logfile Предлагает программе amd использовать logfile в качестве имени системного журнала. -т Предлагает автомонтировщику создать список монтируемых файловых систем, включая количество обращений к каждой из них, а также возникшие при мот ировании ошибки. -р Возвращает РШ дистанционного и локального amd. -s Предлагает автомонтировщику вести статистику по процессу монтирования. -и Просит автомонтировщик демонтировать файловые системы, перечисленные в каталоге directory, вместо того, чтобы информировать о них. Демонтирование только запрашивается, а не выполняется. -v Просит автомонтировщик выдать информацию, куда включается информационное подмножество, получаемое при работе amd с опцией -v. -х log-options Просит автомонтировщик использовать опции регистрации, перечисленные в параметре log-options. -Т Просит amd использовать только протокол TCP. Обычно amq пытается работать с помощью TCP. Если это невыполнимо, пробует UDP. -U Просит amd использовать только протокол UDP. Обычно amq пытается работать с помощью TCP. Если это невыполнимо, то переходит к UDP. Пример Для сбора статистики по автоматическому монтированию набираем следующую команду: t amq -mps ■ root» localhost:(pid413) root 1 localhost is up /etc/and. conf /net toplvl 1 localhost is up 413 requests stale mount mount unmount deferred fhandles ok failed failed 0 0 10 0 t ЭПЭСГОП - периодически запускает команды на машинах, которые не работают постоянно. нтаксис anacron [-s] [-f ] [-n] [-d] [-q] 1-t ваасгопЬвЬ]ЦоЬ]... anacron -u [job]— anacron I-V|-h]
38 II Команды Программа anacron считывает список заданий из файла /ctc/anacrontab с периодом, указанным в днях (не в часах), задержку в минутах, идентификатор задания и команду оболочки, проверяя, было ли в последние п дней выполнено указанное задание Опции -f Вынуждает преждевременно выполнять задания, игнорируя временные метки. -и Только исправляет временные метки заданий на текущую дату, но не запускает их. -s Не запускает новое задание до тех пор, пока не будет завершено предыдущее. -п Игнорирует спецификацию задержки в файле /etc/anacrontab и запускает задания без задержки. Эта опция предполагает опцию -s. -d He выполняет переход в фоновый режим и направляет сообщения в стандартный файл ошибок. Вывод заданий доставляется пользователю, запустившему anacron (обычно root). Без этой опции после своего старта anacron выполняет переход в фоный режим, а родительский процесс немедленно завершается. -q He допускает вывода сообщений в стандартный файл ошибок. Эта опция лишь применима с опцией -d. -t anacrontab Использует указанный anacrontab вместо заданного по умолчанию файла. -V Печатает сведения о версии и завершает anacron. -h Печатает информацию по применению команды и завершает ее. animate - демонстрирует последовательность изображений на компьютерах под Х11. Синтаксис animate [options...] file [ [ options...] file ] Программа animate создает единое отображение цветов для последовательности изображений. Это достаточно продолжительная операция, но вы можете существенно ускорить ее с помощью команды mogrify, ограничив цвета в изображении перед его анимацией. Базовые опции -backdrop color Центрирует изображение на "заднике" указанного цвета, покрывающем весь экран рабочей станции и отвлекающем внимание от других окон. См. в X описание форматов используемых цветов, -background color Указывает цвет фона.
II. Команды 39 -bordercolor color Указывает цвет рамки. См. в X описание форматов используемых цветов. -borderwidth geometry Задает ширину рамки. -cache threshold Подстраивает пороговое значение памяти (мегабайты), доступное видеокэшу. Пока не будет задействовано 80 Мбайт памяти, пикселы изображения хранятся в памяти. Последующие операции с пикселами переносятся на диск. Если ваш компьютер не имеет достаточного количества оперативной памяти, вы, возможно, захотите подстроить это значение. -chop widthxheight{+-}x_offset{+-}y_offset{%} Удаляет пикселы из указанной внутренней части изображения. Здесь width и height задают число соответственно столбцов и строк для удаления, а х offset к у offset - смещения, указывающие положение самого левого столбца и самой верхней строки удаляемой части. Удалив указанную часть изображения, опция -chop старается заполнить образовавшийся промежуток, перенося оставшиеся угловые блоки налево и вверх. -colors value Задает предполагаемое количество цветов для изображения (опция ограничения числа цветов). -colorspace type Устанавливает альтернативный тип цветового заполнения. На выбор предоставляются следующие типы: GRAY, OHTA, RGB, Transparent, XYZ, YCbCr, YIQ, YPbPr, YUV или CMYK. По умолчанию ограничение цветности имеет место в цветовом заполнении RGB. Эта опция требует опцию -colors или опцию -monochrome. -crop widthxheighl{+-}x_offset{+-}y_offset{%} Устанавливает предпочтительный размер и расположение усеченного изображения, используя геометрическую спецификацию (см. X). Вы можете указать ширину или высоту в процентах, добавив %. -delay value Выводит после паузы следующее изображение. Аргумент value - это число сотых долей (1/100) секунды. Максимальная задержка достигает 65535. По умолчанию вывод осуществляется без задержки. -density widthxheight Задает горизонтальное и вертикальное разрешение изображения в пикселах, когда выполняется дешифрирование страницы PostScript или переносимого документа; по умолчанию составляет 72 ppi (pixels per inch - пикселы на дюйм) в горизонтальном и вертикальном направлениях. -depth value Задает количество битов (8 или 16) к цветном образце в пределах пиксела. Эта опция применяется для ни жоурониевых изображений. гл>би-
40 II Команды на цветности которых неизвестна, а именно: для GRAY (изображения * градациях серого), RGB или CMYK. -display host:display[.screeri\ Указывает Х-сервер для контакта (см. X). -dispose method Определяет метод диспозиции (расположения) для GIF-формата: 0 расположение не указано 1 не располагает между кадрами 2 перекрывает кадр фоновым цветом из заголовка 3 перекрывает предшествующим кадром -dither Использует диффузию (рассеивание) ошибки по Флойду/Штейнбергу (Floyd/Steinberg), улучшающую изображения, которые страдают от сжатия палитры. Эта опция требует опцию -colors или -monochrome. Базовая стратегия рассеивания состоит в том, чтобы создать пространственное разрешение путем усреднения интенсивностей нескольких соседних пикселов. -font name Для отображения текста использует указанный шрифт XII -foreground color Определяет цвет переднего плана. См. в X описание форматов используемых цветов. -gamma value Устанавливает уровень гамма-коррекции (от 0.8 до 2.3), позволяющей подстроить изображения на мониторах разных рабочих станций. Если требуется приложить гамма-значения к красному, зеленому или синему каналам изображения, значения следует отделить друг от друга наклонной чертой. -geometry widthx.height{+-}x_offset{+-}y_offset{%} {!}{<} {>} Устанавливает предпочтительный размер или расположение окна изображения. По умолчанию во время изменения размера пытается сохранять формат изображения (соотношение ширины и высоты). Чтобы вынудить изображение принять некий определенный размер, добавьте в конце восклицательный знак. Вы можете указать процент ширины (или высоты), добавив %, и изменить размеры с помощью о. Символ > меняет размер изображения только в том случае, если его ширина или высота превышают геометрическую спецификацию. Символ < меняет размер изображения только в том случае, если его ширина и высота меньше, чем геометрическая спецификация. Символ @ указывает максимальную область изображения в пикселах. -interlace type Указывает тип чередования (поочередного сканирования линий) для низкоуровневых форматов изображений (RGB или YUV): None (RGBRGBRGBRGBRGBRGB...) по умолчанию Line (RRR...GGG...BBB...RRR...GGG...BBB...) Plane (RRURRR...GGGGGG...BBBBBB...)
II. Команды 41 Partition как Plane, по разные битовые плоскости (матрицы, образованные совокупностью одноименных битов всех пикселов) сохраняются в разных файлах: image.R, image.G, image.B -map type Выбирает набор цветов из следующих стандартных типов отображения: best red default green gray blue -monochrome Трансформирует данное изображение в монохромное (черный и белый цвета). -pause seconds Устанавливает паузу в секундах между повторением анимации. -rotate degrees{<} {>} Поворачивает изображение вращением Паеса (Paeth) на указанный угол. Символ > вращает изображение только в том случае, если его ширина превышает высоту; символ < вращает изображение только в том случае, если его ширина меньше высоты. -scenes value-value Указывает номера читаемых изображений. Каждое изображение диапазона считывается согласно задаваемому имени файла, в котором после точки присутствует номер. -size widthv.height{+offset} Указывает ширину и высоту низкоуровневых изображений (GRAY, RGB или CMYK) с неизвестными размерами. -title string Назначает указанный заголовок окну с изображением. -verbose Печатает подробную информацию об изображении. -window id Выполняет изображение фона, задаваемого по имени или идентификатору окна. Для id задайте значение root, если в качестве целевого хотите указать корневое окно X. Пример ш root@sofia /root И X File Edit Settings Help [rootBsofia /root]* animate xbitrcap.xbm -delay 10 xmask.xbi» D
42 II Команды ailSWGr - си тема транскрипции телефонных сооб ении. Синтаксис answer [-pu] Команда answer - часть почтовой системы elm, позволяет записывать телефонограммы в виде сообщений электронной почты. Программа использует стандартные адреса телефонной почты или псевдонимы. Она может также использовать свой собственный набор псевдонимов, обычно это подмножество системных псевдонимов. Чтобы использовать указанную возможность, достаточно создать набор псевдонимов и инсталлировать их с помощью команды newalias. Опции -р Приглашает для ввода полей сообщения. -и Разрешает использовать любые имена, даже не встречающиеся в таблице псевдонимов. Программа приглашает создать сообщения, требуя заполнить такие поля, как Message to:, где следует ввести имя пользователя, и некоторые другие поля, относящиеся к делу: TELEPHONED (звонящий), PLEASE CALL (пожалуйста, вызовите), URGENT (срочно). Из программы answer можно выйти, набрав в приглашении Message to: любое из следующих слов: quit, exit, done или bye. appTGS - дает список ресурсов системы X. Синтаксис ^ © appres [class[instance]]l-l][toolkitoptions] Программа appres выводит список Х-ресурсов, используемых приложением, которое задается классом class и образцом имени instance, идущим сразу после имени класса. Хотя можно задать обычную опцию Xt в качестве toolkitoptions, но только не указывая при этом образец имени. Чтобы вывести ресурсы, соответствующие указанному уровню в иерархии, следует добавить в командную строку опцию -1. Пример © Учтите, что вывод команды appres может занимать несколько страниц. Ниже приведена часть листинга, полученного при задании команды appres Xnian: *quit.Label: Quit *manualBrowser*likeToSave*yes.translations: loverride <BtnlDown>,<BtnlUp>: SaveFormattedPage(Save) reset)) \n\ <Key>y: SaveFormattedPage(Save) \n\ <Key>n: SaveFormattedPage(Cancel)
II. Команды 43 *manualBrowser*likeToSave*no. translations: # override <BtnlDown>,<BtnlUp>: SaveFormattedPage!Cancel) reset() \n\ <Key>y: SaveFormattedPage(Save) \n\ <Key>n: SaveFormattedPage(Cancel) *manualBrowser*likeToSave*translations: t override <Key>y: SaveFormattedPage(Save) \n\ <Key>n: SaveFormattedPage(Cancel) *manualBrowser*search*manualPage.translations: {augment <BtnlDown>f<BtnlUp>: Search(Hanpage) reset() *manualBrowser*search*apropos.translations: taugment <BtnlDown>,<BtnlUp>: Search(Apropos) reset)) *manualBrowser*search*cancel*translations: laugment <BtnlDown>,<BtnlUp>: Search(Cancel) reset() *manualBrowser*search*value*translations: loverride <Key>Return: Search(Hanpage) \n\ Ctrl<Key>m: Search(Hanpage) *manualBrowser*directory.translations: (override Ctrl<BtnlDown>: XawPositionSimpleHenu(optionHenu) HenuPopup(optionHenu) \n\ Ctrl<Btn2Down>: XawPositionSimpleHenu(sectionHenu) HenuPopup(sectionHenu) \n\ Shift<Btn2Down>,<Btn2Up>: GotoPage(Hanpage) \n\ Ctrl<Key>q: Cuit() \n\ Ctrl<Key>c: Quit() \n\ Ctrl<Key>r: RemoveThisHanpage() \n\ Ctrl<Key>n: CreateNewHanpage() \n\ Ctrl<Key>h: PopupHelpf) \n\ Ctrl<Key>d: GotoPage(Directory) \n\ Ctrl<Key>m: GotoPage(HanualPage) \n\ Ctrl<Key>v: ShowVersionf) \n\ Ctrl<Key>s: PopupSearchf) cipTOpOS - исследует базу данных whatis no ключевым словам. Синтаксис apropos keyword ... Команда apropos осуществляет поиск по ключевым словам среди файлов БД, содержащей краткие описания команд системы, и затем выводит результат на стандартный вывод. Пример -, В результате выполнения команды apropos show можно получи гь примерно такюй вывод: B::Showlex (3pm) - Show lexical variables used in functions or files OShowEvent (qshowevent) (3qt) - The event sent when a widget is shown
44 II Команды cnfsstat (8) dnsdomainnaine [ hostname ] domainnaine [hostname] (1) ftpcount (1) ftpwho (1) - show snapshot of CNFS (1) - show the system's DNS domain паве - show or set the system's NIS/YP donain паве - show current number of users for each class - show current process information for each ftp user - show or set the system's host name - show listing of last logged in users - show listing of last logged in users - display MIME messages - show the next message (1) - show or set system's NIS/YP domain name - show or set the system's DECnet node name - panel stack extension for curses - show the previous message - show / manipulate the IP routing table - show host status of local machines - show (display) messages - Play an audio email message - Fetch and display the body of a mail message that is included by reference - displays all characters in the current screen-font - examine the scan codes and keycodes sent by th - shows the full path of (shell) commands - show who is logged on 1) - show or set the system's NIS/YP domain name - Draw a system showing self-organizing criticality - font dumper for X font server - uncompile an rgb color-name database - Show an XPH (X PixMap) file and/or convert XPH 1 or 2 files to XPH 3 Помните, что поиск по ключевым словам типа Is или at может вызвать вывод многостраничных листингов. hostname last lastb [last] mhshow next nisdomainname (1) (1) (1) (1) (1) [hostname] nodename [hostname] panel [show panel] prev route ruptime show showaudio showexternal (1) <3x) (1) (8) (1) (1) (1) (1) showfont [showcfont] (1) showkey (1) which (1) who (1) ypdomainname [hostname] ( critical (1) showfont showrgb sxpm (lx) (lx) (lx) ar утилита упаковки. К Синтаксис ar [-]{dmpqrtx}[abciosuv][meiiibemaiDe]arcftive files Программа GNU под названием ar создает архивы, модифицирует и извлекает файлы из архивов. Архив - это единый файл, содержащий набор других файлов в формате, делающем возможным их последующее восстановление в отдельные оригинальные файлы. Содержимое оригинальных файлоп, полномочия, временные метки, владелец н группа могут быть воссозданы при восстановлении. аг обычно работает с двоичными программами, создавая архивы, исноль i\ емые как библиотеки общедоступных утилит. Таблица символов (идентификаторов) архива применяется программой Id для многочисленных чффектипных прохождений чер«м оно-
II. Команды 45 лиотеку объектных файлов. Таблица символов архива создается и поддерживается утилитой аг, если, по крайней мере, в архиве имеется хотя бы один объектный модуль. Этот служебный файл никогда не упоминается при выводе содержания архива и напрямую недоступен пользователям. Прежде всего при работе с утилитой аг следует указать выполняющуюся операцию (в фигурных скобках), которая может принимать одно из следующих значений: d удаляет модули из архива; следует указать имена модулей, которые будут удалены как файлы; если указать модификатор v, утилита аг распечатает список удаляемых модулей m эта операция осуществляет пересылку компонентов в архив; если дополнительно не используются никакие модификаторы, то указываемые файлы перемещаются в конец архива; модификаторы а, Ь или i позволят выполнить операцию замещения р выводит содержимое заданных компонентов архива на стандартный вывод; если используется модификатор v, перед выводом содержимого печатается имя компонента архива; если имена файлов не указываются, то распечатываются все файлы архива q выполняет быстрое добавление: файлы просто добавляются в конец архива без попыток замены; модификаторы а, Ь, i в этом случае не срабатывают: новые компоненты помещаются в конец архива; модификатор v в этом случае выдает список добавляемых файлов г включает файлы в архив с замещением; эта операция отличается от операции q тем, что любые ранее существующие члены будут удалены, если их имена совпадут с именами добавляемых файлов; по умолчанию новые члены добавляются в конец архива; а, Ь или i позволят осуществить фактическое замещение ранее существующих файлов t выводит таблицы содержания архива; если требуется дополнительная информация о полномочиях, временных метках, владельце, группе и размере помимо имен файлов, необходимо указать модификатор v; если в архиве по имени archiv содержится несколько файлов с одинаковыми именами, скажем, filel, то по команде аг t archiv filel можно получить только первый файл с таким именем; чтобы увидеть все такие файлы, следует запросить полный листинг с помощью команды аг t archiv х извлекает из архива указанные файлы; модификатор v в данном случае позволяет получить список извлеченных файлов; если при использовании этой операции ие задаются имена файлов, то из архива будут извлечены все файлы Сразу же вслед за кодом операции могут следовать такие модификаторы: а добавляет новые файлы после существующего члена архива; если применяется модификатор а, имя существующего члена архива задается п качестве аргумента membername до появления спецификации archive b добавляет в архив новые файлы перед существующими с создает архив
46 II. Команды i включает новые файлы до существующего члена архива; если применяется модификатор i, имя существующего члена архива задается в качестве аргумента membername до появления спецификации archive о сохраняет оригинальные временные метки членов при их извлечении из архива; если этот модификатор не указывается, то файлы, извлеченные из архива, получат метки, соответствующие времени извлечения s аг может создать индекс для идентификаторов, определенных в настраиваемых объектных модулях архива, если указывается модификатор s; однажды созданный, этот индекс может обновляться в архиве всякий раз, когда аг производит изменение содержимого архива; можно использовать модификатор s с любой операцией или сам по себе, запустив аг s и включает лишь те из файлов, которые отличаются от уже имеющихся в архиве v подробно информирует о выполненных операциях Примеры Команда аг -qcv archivcl priml prim2 prim3 создает архив archivel и наполняет его файлами priml, prim2, prim3. С помощью команды аг -t archivel можно ознакомиться с содержанием архива archivel. Команда аг -р archivel priml позволит выполнить распечатку содержимого файла priml из архива archivel. ЭГСП - выводит тип (архитектуру) аппаратной платформы К. компьютера. Синт - и arch Команда arch эквивалентна команде штате -т. Сегодня Linux "знает" такие системы: i386, i486, i586, alpha, spare, arm, m68k, mips, ppc. ЭГр - манипулирует системным кэшем ARP ч таксис arp [-vn][-H type]l-i. if] -a [hostname] Вывод кэша ARP arp I-v][-i if] -d hostname [pub] Удвленив элемента кэша arp [-v][-H type][-i if] -в hostname hw_addr [temp] Добавление элемента arp [-v][-H type][-i if] -s hostname hw_addr [netmask rnn] Добавление элемента arp [-v][-B type][~i if] -Ds hostname if [netmask nm] pub Добавление элемента arp [-vnD]I-H type][-i if] -f filename Добавление элемента ш файла
II. Команды 47 Протокол Ethernet идентифицирует сетевые узлы при помощи адреса, состоящего из 6 байт, но это число не имеет ничего общего с IP-адресом. Для решения проблемы применяется ARP - Address Resolution Protocol - протокол разрешения адреса. Следовательно, ARP служит для определения адреса Ethernet, соответствующего данному IP-адресу. Во всех случаях, когда задается имя сетевого узла, можно использовать точечно- десятичный формат имени. В целях отладки программа агр позволяет получить дамп кэша ARP. Оп ии -v Выдает подробные сообщения. -п Показывает числовые адреса вместо того, чтобы пытаться определить символические имена узлов, порт или имена пользователей. -Н type При установке или чтении кэша данный необязательный параметр сообщает агр, какой класс элементов следует проверять. По умолчанию этот параметр принимает значение ether (код оборудования 0x01 для IEEE 802.3 10Mbps Ethernet). Другие значения могут определять сетевые технологии, а именно: ash (Ash) tr (16/4 Mbps.TR) tr (16/4 Mbps Token Ring (New)) ax25 (AMPR Ax.25) netrom (AMPR NET/ROM) arcnet (ARCnet) dlci (Frame Relay DLCI) rose (AMPR ROSE) fddi (Fiber Distributed Data Interface) hippi (HIPPI) irda (IrLAP) -a hostname Выводит элементы кэша для заданных узлов. Если параметр hostname не указан, будут выведены все элементы. -d hostname Удаляет любой элемент кэша ARP указанного сетевого узла. -D Использует адрес оборудования, принятый в заданном интерфейсе (см. опцию -i if). -i if Осуществляет выбор сетевого интерфейса (например, ethO). -s hostname hwaddr Обычно создает ARP-разрешение адреса для сетевого узла hostname; hwaddr - это класс адресации оборудования. Для класса Ethernet используется 6 байт в шестнадцатеричном виде, разделенных символами двоеточия. При добавлении элементов proxy агр нужно установить флаг pub вместе с флагом nctmask, а также определить шаченне пт в качестве сетевой маски. Это позволит определить услугу proxy агр для почестей. Технология proxy ARP позволяет одному ссгс№м\ утл> выполнять функции шлюза для другого узла. Добавленные элементы б>ч>т
48 II. Команды постоянно храниться в кэше АКР, если только не задается флаг temp (временно), -f filename Действует подобно опции -s, но только в этом случае элемент берется из файла filename. Очень часто таковым файлом является /etc/ether», но это - не обязательно. Пример Ниже показано, как проверить таблицу ARP, используемую ядром: t arp -а IP address HW type HH address 172.18.1.4 lOHbps Ethernet 00:00-.C0:4B:32:A0 172.18.1.5 lOHbps Ethernet 00-.00:CO:70:D3:54 172.18.2.1 lOHbps Ethernet 00:00:C0:1A:C4:01 t 3S - вызов мобильного ассемблера GNU. Ix Синтаксис as [-atdhlns][=rXZe]][— defsym STH=VAL\ [-f ] [— gstabs] [-1 path] [-K] [-L] [-M|—mri] [-o objfile] [-R] [—traditional-format 1 [-v] [-W] [ — | files... ] опции только для i960: [ -АСА| -АСА_А| -АСВ | -АСС | -АКА | -АКВ | -АКС | -АНС ] [ -Ь] [ -no-relax] опции только для т680х0: [-1][-т68000|-т68008|-т68010|-т68020|-т68030|-т68040|-т68060|-т68302| -т68331 |-т683321 -т683331 -т68340 | -mcpu32 | -т52001 Сначала о GNU as, который фактически представляет семейство ассемблеров. Если вы используете GNU ассемблер на одной архитектуре, то найдете очень похожее окружение на другой архитектуре. Каждая версия имеет много общего с другой, включая форматы объектных файлов, большинство директив (часто называемых pseudo- ops) и даже синтаксис. as первоначально предназначался для ассемблирования вывода компилятора GNU С, называемого gcc, для использования компоновщиком Id. Программа as пытается корректно ассемблировать любой исходный код, хотя это вовсе не означает, что as всегда использует подобный синтаксис, как другой ассемблер для такой же архитектуры. Существует несколько несовместимых по синтаксису версий языка ассемблер для 680x0. Если в командной строке отсутствуют имена файлов, читается один входной файп со стандартного ввода, которым обычно является ваш терминал, as может выводить предупреждения и сообщения об ошибках в стандартный файл ошибок (обычно ваш терминал). Основные опции -а Включает создание листингов ассемблирования Существует неекчхчъ- ко подопций: d опускает диренгины отладчика
II. Команды 49 h включает исходный код наивысшего уровня, при этом файл с исходным текстом программы должен компилироваться с опцией -g 1 включает листинг ассемблирования п опускает обработку форм s включает листинг символов (идентификаторов) =Jile устанавливает имя файла для листинга; эта подопция должна быть последней -defsym SYM=VAL Устанавливает значение символа SYM, равным VAL, перед ассемблированием входного файла. VAL может быть целой константой. Идущее в начале константы выражение Ох обозначает шестнадцатеричное значение, а 0 - восьмеричное. -f Пропускает препроцессорную обработку; предполагается, что исходный текст — это вывод компилятора. I path Добавляет маршрут к списку поиска для директив типа .include. —gstabs Для каждой ассемблируемой строки генерирует информацию отладчика (stabs). -К Выводит предупреждения, когда разнящиеся таблицы изменяются согласно длинным смещениям (относительно базовых адресов). -L Держит в таблице символов в системах a.out локальные символы, начинающиеся с буквы L. -М, —mri Ассемблирует в MRI-совместимом режиме. -о objfile Определяет имя выходного объектного файла. -R Загоняет секцию данных в текстовую секцию. —traditional-format Когда возможно, использует такой же формат, как "родной" формат ассемблера. -v Объявляет версию ассемблера. -W Запрещает выдачу предупреждающих сообщений. —\files... Использует для ассемблирования стандартный ввод или заданные исходные файлы. -Ь Добавляет статистику о выбранных ветвях для Intel 960. -no-relax He выполняет замещений команд в случае длинных смещений (относительно базового адреса). -m68000|-m68008|-m68010... Сообщает, что вывод производится на процессоре семейства 68000. Опции могут следовать в любом порядке: до, после и между нмснами файпов. Порядок имен файлов существенен. Любой аргумент командной строки, которому предшествует только один дефис, является опцией. После опции -о следует всегда очно имя файла.
50 II Команды Пример Вызов ассемблера можно выполнить с помощью примерно такой команды: $ as -о as-object-file.o source.s SSCpU - монитор загрузки ЦП, входящий в состав менед- К жера окон AfterStep. Синтаксис ascpu [-h][-H]I-ver][-iconic][-withdrawn][-position[+|-]x [+|-]y] l-dev device][-u updaterate] [-display лаше][-Ьд coJor][-fg color] [-sys color][-nice color][-user color][-idle color] Основные опции -h, -H Печатает краткое описание и правила применения, -ver Печатает версию программы. -iconic Первоначально запускает только пиктограмму программы, которая в дальнейшем может быть развернута. -withdrawn Запускает приложение в сокращенном режиме (без целого ряда атрибутов обычного окна программы ascpu). -position [+|-M+[-ly Размещает окно программы в заданном месте экрана, определяемом абсциссой л: и ординатой .у. -dev device Определяет расположение устройства (файла), предназначенного для получения статистической информации; по умолчанию этим устройством является /proc/stat. -u update jrate Меняет интервал времени опроса для доступа к ЦП. Время опроса обычно указывается в секундах. Минимальное значение (оно же принято по умолчанию) устанавливается в 1 секунду. -display name Задает имя дисплея, в котором запущено окно ascpu. -bg color Задает цвет прорисовки кривой (графика) времени ЦП для фоновых процессов. -fg color Задает цвет прорисовки кривой (графика) времени ЦП для основных процессов. -sys color Задает цвет прорисовки кривой (графика) системного времени ЦП. -nice color Задает цвет прорисовки кривой (графика) времени ЦП для процессов, запущенных с предопределенным по команде nice приоритетом. -user color Задает цвет прорисовки кривой (графика) времени ЦП для нолыопя- тельских процессов. -idle color Задает цвет прорисовки кривой (графика) времени бездействия (простоя).
II. Команды 51 ash - вызов оболочки. Синтаксис ash [-eflijnsxz][+eflijnsxz][-с command][arg]... ash - это версия sh с рядом особенностей, присущих оболочке System V. Если задается опция -с, оболочка выполняет указанную команду command. Флаг -s вынуждает оболочку прочесть команды со стандартного ввода (после выполнения любой команды, указанной с опцией -с). Если отсутствует опция -s или -с, тогда первый аргумент arg берется в качестве имени файла, из которого следует читать команды. Если это невозможно потому, что за опциями не следуют аргументы, тогда оболочка ash сама установит флаг -s и начнет считывать команды со стандартного ввода. Оболочка принимает начальные значения позиционных параметров от аргументов, оставшихся после того, как выбрано имя файла с командами. Все флаги, кроме -с, устанавливаются предшествующим им знаком минус и очищаются предшествующим знаком плюс. Опции -е Прекращает работу оболочки, если код завершения какой-нибудь команды не равен 0, за исключением тех случаев, когда явно задается проверка кода завершения команды. Это случается, если команда находится слева в операторах && или ||, а также в конструкциях if, elif, while или until. -f Отменяет создание имени файла. -I Предлагает оболочке игнорировать конец файла — eof. Это неприменимо в случае использования команды точки. Оболочка действительно завершит свою работу, если примет 50 в строке символов cof. -i Делает оболочку интерактивной. -j Включает управление заданиями, принятое в системах Berkeley. Когда оболочка стартует и принят флаг -i, флаг -j принимается по умолчанию. -п Приказывает оболочке считывать, но не выполнять команды. Это удобно при проверке синтаксиса сценариев. -s Если установлен этот флаг, то, стартуя, оболочка считывает команды со стандартного ввода; во всех остальных случаях этот флаг игнорируется. -х Распечатывает каждую команду перед выполнением. -z Если установлен этот флаг, то в процессе генерации имен файлов могут создаваться файлы нулевой длины (пустые файлы). Если «тот фчаг не установлен, тогда образец (шаблон), несопоставимый ни с oihiim именем файла, будет замещен своей собственной версией в кавычках.
52 II. Команды asioaa монитор загрузки ЦП, входящий в состав менеджера окон AfterStep. Синтаксис (основные опции) asload [-h][-ver][-iconic][-withdrawn][-shape][-u update_rate] [-position[+|-]x[+|-]y)[-led color]l-exe command] asload - приложение XI1, которое для компьютеров, работающих под Linux, выполняет роль монитора загрузки ЦП. Монитор предназначался для работы с файловой системой PROC. Обычно все разновидности Linux приходят с этой файловой системой. Основные опции -h Печатает краткое описание и правила применения. -ver Печатает версию программы. -iconic Первоначально запускает только пиктограмму программы, которая в дальнейшем может быть развернута. -withdrawn Запускает приложение в сокращенном режиме (без целого ряда атрибутов обычного окна программы asload). -shape Запускает приложение в рамке без привычного окаймления. -u update rate Меняет интервал времени опроса для доступа к ЦП. Время опроса обычно указывается в секундах. Минимальное значение (оно же принято по умолчанию) устанавливается в 1 секунду. -position [+|-М+|-1у Размещает окно программы в заданном месте экрана, определяемом абсциссой х и ординатой у. -led color Применяет для отображения загрузки ЦП выбранный цвет кривой (графика). -ехе command Устанавливает апгшет, выполняющий заданную команду по щелчку мыши в окне asload. Пример Изначально монитор asload предназначался для запуска в загрузчике Wharf менеджера окон AfterStep, но может быть вызван в обычной командной строке в фоновом режиме: asload -u 1 -led red &
II. Команды 53 ЭТ - планирует за ания ля последую его выполнения К Синтаксис at [-V][q queue] [-f file] [-mldv] TIME at -c jobljob ] Команда at читает команды, которые должны выполняться в запланированное время, со стандартного ввода или заданного файла, при этом используется /bin/sh. Необходимость выполнить определенную последовательность команд часто связана с задачами системного администрирования. Суперпользователь всегда имеет доступ к этой команде и может указать пользователей, которым также разрешен доступ к ней. Для этого используются файлы /etc/at.allow и /etc/at.deny. Если файл /ctc/at.allow существует, то доступ к команде имеют только пользователи, перечисленные в нем. Если этот файл отсутствует, но имеется файл /etc/at.deny, то доступ к команде at имеют все пользователи кроме перечисленных во втором файле. Сначала вы вводите команду at и планируемое время выполнения, а уже затем собственно сами команды, ввод которых завершается нажатием Ctrl+D. Набор введенных команд оседает в виде задания в очередях команды at, которое и будет выполнено в указанное время. Вывод этих команд, если он существует, можно получить по электронной почте. Оп ии -V Выводит номер версии в стандартный файл ошибок. -q queue Использует указанную очередь, обозначенную буквой, лежащей в интервалах от а до z и от А до Z. По умолчанию очередь а предназначена для команды at, очередь b — для команды batch. Очереди, обозначаемые последующими буквами, будут запущены с более высоким числовым значением приоритета планируемых команд (в порядке убывания). Специальный символ — знак равенства — зарезервирован для обозначения очереди текущих заданий. Если задание входит в состав специальной очереди, обозначенной прописной буквой, это трактуется как перс- дача его batch в заданное время. -f file Читает задания из указанного файла. -т Отправляет почтовое уведомление пользователю, когда задание выполнено, даже если отсутствует вывод. -1 Команда at с этой опцией работает аналогично команде atq. -d Команда at с этой опцией работает аналогично команде ntrm. -с job Выводит перечисленные скомплсктованые задания job на стандартный вывод. В качестве параметра job следует указать идентификатор задания, ранее присвоеыгмй командой at для просмотра. -v Проси г atq показать завершенные задания, но не удалять их из очереди.
54 li Команды TIME Спецификация, определяющая время выполнения согласно стандарта POSIX.2. Она предполагает задание времени в формате НН:ММ (НН часы, ММ - минуты) в указанный день. Если это время уже прошло, принимается следующий день. Можно использовать спецификацию времени с ключевыми словами midnight (полночь), noon (вечер), teatime (4часа после полудня). Можно расширять числа, определяющие время, суффиксами am или рт соответственно для утра или вечера. Можно задать дату в формате month-name_day (month - месяц, name_day - день недели), а можно в формате MMDDYY (ММ - месяц, DD - день, YY - год), MM/DD/YY или DD.MM.YY. За спецификацией времени должна следовать спецификация даты. Можно задать время в виде t\ow+count time-units, где lime-units - единицы измерения, могут выражаться в minutes (минутах), hours (часах), days (днях) или weeks (неделях), a count - собственно числовое значение, выраженное в указанных единицах измерения. Ключевые слова today и tomorrow обозначают соответственно сегодня и завтра. Полное определение спецификации времени для Red Hat Linux 6.0 можно найти в файле /usr/doc/at-3.1.7/timespec. Для Red Hat Linux 7.0 упомянутую спецификацию можно найти в /usr/share/doc/at-3.1.8/timespec, словом, в любой версии Linux (и не только Red Hat) она обязательно присутствует. Примеры Чтобы запустить задание в 2 часа после полудня через 4 дня, считая от сегодняшнего, следует набрать команду at 2pm+4 days. Команда at 9am FEB 20 запустит задание в 9 часов утра 20 февраля. Предположим в команде at, которая получила для своего задания идентификатор, равный 2, всего только предполагалось выполнить две команды: du и Is -I. Тогда по команде at -с 2 можно получить такой листинг: t!/bin/sh t atrun uid=500 gid=500 f mail misha 0 umask 2 PWD=/home/misha; export PWD HOSTNAME=sofia; export HOSTNAME QTDIR=/usr/lib/qt-2.2.0; export QTDIR LESSOPEN=\|/usr/bin/lesspipe.sh\ %б; export LESSOPEN KDEDIR=/usr; export KDEDIR USER=misha; export USER LS_COLORS=no=00:fi=00:di=01\;34:ln=01\;36:pi=40\;33:so=01\;35:bd=40\;33\; 01:cd=40\;33\;01:or=01\;05\;37\;41:mi=01\;05\;37\;41:ex=01\;32:\*.cmd=01\; 32:\*.exe=01\,-32:\*.com=01\;32:\».btln=01\;32:\*.bat=01\;32:\*.sh=01\;32:\*.csh=01\j 32:\*.tar=01\;31:\*.tgz=01\;31:\*.arj=01\;31:\*.taz=01\;31:\*.lzh=01\;31:\*.zip=01\; 31:\*.z=01\;31:\*.Z=01\;31:\*.gz=01\;31:\*.bz2=01\;31:\*.bz=01\;31:\*.t*»01\; 31:\*.rpra=01\;31:\*.cpio=01\;31:\*.jpg=01\;35:\*.gif=01\;35:\*.llip=01\;35:\«.xliip01\,- 35:\*.xpm=01\;35:\«.png=01\;35:\».tif=01\;35:; export LS COLORS HACHTYPE=i386-redhat-linux-gnu; export MACHTYPE MAIL=/var/spool/mail/mieha; export MAIL INPUTRC=/etc/inputrc; export INPUTRC BASB_ENV=/honie/misha/.bashrc; export BASH ENV LAHG=en_US; export LAHG ~
II. Команды 55 LOGNAME=misha; export LOGHftME SBLVL=1; export SHLVL USERHAME=; export USERHftME HOSTTYPE=i386; export HOSTTYPE OSTYPE=linux-gnu; export OSTYPE HISTSIZE=1000j export HISTSIZE HOHE=/home/misha; export HOME PATH=/u6r/local/bin:/bin:/usr/bin:/usr/XllR6/bin:/home/misha/bin; export PATH cd /home/misha || { echo 'Execution directory inaccessible' >&2 exit 1 } du Is -1 В самом конце листинга можно увидеть собственно задаваемые команды. atobm - утил та конвертирования • я сист-мы X Wind»w. 'КСИС atobm [-chars cc] [-name variable] [-xhot number] [-yhot number] ] filename] Конвертирует строки формата ASCII в черно-белые растровые файлы. Команда atobm часто используется для создания включаемых в текст изображений. Растровые файлы хранятся в виде маленьких фрагментов на исходном языке С, доступных для включения в приложения. ци -chars ее Указывает пару символов, используемых при конвертировании. Первый символ представляет нулевой бит, а второй — соответственно единичный бит. По умолчанию применяются символ дефиса для нулей и символ # для единиц. -name variable Эта опция указывает имя, используемое при выводе растрового файла. По умолчанию используется результат действия команды basename на аргумент командной строки filename, указывающий имя файла Поле имени может оставаться пустым, если читается стандартный входной файл. -xhot number Опция указывает Х-координату базовой точки; допускаются только положительные значения. По умолчанию никакая информация по базовой точке не включается. -yhot number Опция указывает Y-координату базовой точки; допускаются только положительные значения. По умолчанию никакая информация по базовой точке не включается. filename Файл, содержащий строки формата ASCII. В случае его отсутствия используется стандартный ввод.
56 И Команды Пример В файле vvv содержатся две следующие строки: ########## С помощью команды atobm vvv получаем следующий простенький фрагмент программы на языке С: idefine vvv_width 10 tdefine vvv_height 2 static unsigned char vvv_bits[J = { Oxff, 0x03, 0x00, 0x00 }; В самом конце листинга можно увидеть собственно задаваемые команды К atq выводит список задании, поставленных в очередь командами at и batch. Синтаксис atq l-V][-q qveue][-v] Выводит список собственных заданий обычного пользователя. Для суперпользователя выводит список всех заданий. Опции -V Выводит номер версии программы at в стандартный файл ошибок. -q queue Использует указанную очередь, обозначаемую буквой, лежащей в интервалах от а до z и от А до Z. По умолчанию очередь а соответствует команде at, очередь b - команде batch. Очереди, обозначаемые последующими буквами, будут запущены с более высоким числовым значением приоритета. Специальный символ - знак равенства - зарезервирован для обозначения очереди текущих заданий. Если задание входит в состав специальной очереди, обозначенной прописной буквой, это трактуется как передача его batch в заданное время. -v Показывает уже выполненные, но еще не удаленные из очереди задания. Примеры По команде atcj просматривается листинг, содержащий два задания для команды at, которые планировалось выполнить 7 апреля 2000 года соответственно в 1.33 и в 1.44: 4 2000-04-07 01:33 а 5 2000-04-07 01:44 а
II. Команды 57 ЭиГП удаляет задания из очереди запланированных К заданий. Синтаксис atrm [ -V] job{ job ] Опции -V Выводит номер версии программы at в стандартный файл ошибок. job Указывает задание для удаления из очереди. audiocompose - создает аудиофрагмент для включения в почтовое сообщение. Синтаксис audiocompose filename Программа audiocompose позволяет на соответствующим образом оборудованной рабочей станции ввести аудиофрагмент для записи в указанный файл. После записи пользователю предоставляется шанс прослушать фрагмент и при желании переписать его. Имя программы audiocompose может быть выбрано в качестве значения переменной окружения RECORD_AUDIO В настоящее время команда работает на рабочих станциях Sun и Sony, имеющих микрофоны. Аргумент filename задает файл, куда происходит запись аудиофрагмента. audiosend - посылает звуковое сообщение по электронной почте. интаксис ' audiosend [addr] Команда audiosend позволяет на соответствующим образом оборудованной станции отправлять звуковые фрагменты по электронной почте. Если аргумент addr. определяющий адрес получателя, отсутствует, предстоит заполнить такие поля: То:, Subject:, СС:. А после этого программа пригласит нажать клавишу Return, если пользователь готов записывать звуковое сообщение для отправки. В настоящее время работает на рабочих станциях Sun и Sony, имеющих микрофоны.
58 II Команды SUIT)IX - регулирует установки аудиомикшера. Синтаксис aumix \-channel_option [[+|-][amount]]|I]level|R[ecord]|р[lay]|q[uery]] [-d][-f rc_file](-h][-I][-L][-q][-S] Программа регулирует настройки аудиомикшера. Может использоваться из командной строки, в сценарии или интерактивно: с помощью клавиатуры или мыши. Опции Существуют следующие channel option (каналы): -v главный уровень -Ь басы (нижние частоты) -t верхи (верхние частоты) -s синтезатор -w PCM -р динамик компьютера -1 линейный вход -т микрофон -с CD -х монитор микшера -i усиление входа -о усиление выхода _ i^ i @ -1 линия 1 -2 линия 2 -3 линия 3 Для каждого канала должны задаваться запросы, усиление уровня в случае знака плюс или убывание в случае знака минус, а также само значение. Если после канальной опции отсутствует знак плюс или минус, заданное число указывает уровень (монофонический). Другие опции -d device Jile Указывает файл микширующего устройства, по умолчанию принимается /dev/mixer. -f re Jile Указывает файл сохранения настроек. -h Выводит подсказку по применению опций команды. -I Запускает команду aumix в интерактивном режиме; если никакие опции не заданы, этот режим применяется по умолчанию. -L Загружает настройки из SHOME/.aumixrc или /etc/aumixre, если шаблон недоступен. -Ч Опрашивает все устройства и печатает их настройки.
II. Команды 59 -S Сохраняет настройки в SHOME/.aumixrc. Пример aumix -q -v80 -mO -c R -c+5 -m q Распечатываются все настройки, главный уровень устанавливается в 80% от максимально возможного, микрофон - в 0, устройство CD - на чтение, к тому же его уровень увеличивается на 5 (как левый, так и правый), выводятся новые настройки микрофона. autofs управляющий сценари" i • -: • ■ онтирования. Синтаксис /etc/гс.d/init.d/autofs start|stop j reload|status autofs управляет работой демонов, осуществляющих автомонтирование в Linux. Обычно autofs вызывается во время загрузки системы с параметром start и во время завершения ее работы с параметром stop. Но сценарий autofs может быть вызван системным администратором, чтобы перезагрузить (reload), остановить или возобновить работу автомонтировщиков. autofs находит точки монтирования, используя информацию файла /etc/auto.master. Для каждой точки монтирования запускается automount с соответствующими параметрами. Параметр status запрашивает текущую конфигурацию. Примеры Требуется определить текущую конфигурацию (сконфигурированные и активные точки подключения): I /etc/гс.d/init.d/autofs status Configured Mount Points: /usr/sbin/automount -timeout 60 /misc file /etc/auto.misc Active Mount Points: « При перезагрузке сравнивается текущая таблица auto.master с той, с которой работают демоны автомонтирования; если будут обнаружены отличия, демоны 6}дут "убиты", а затем запущены для работы с новой таблицей: # /etc/rc.d/init.d/autofs reload Checking for changes to /etc/auto.master Start /usr/sbin/automount -timeout 60 /misc file /etc/auto.misc «
60 il Команды automount - конфигурирует точки монтирования для autofs. Синтакси automount [-ptv] mount-point шар-type], format] map [map-options] Программа automount применяется, чтобы сконфигурировать точку монтирования для autofs, встроенного в Linux автомонтировщика. automount берет как минимум три обязательных аргумента. Далее описаны обязательные и необязательные аргументы. Аргументы mount-point Задает имя каталога, который будет использоваться для подключения файловых систем с помощью autofs. Этот каталог обязательно должен существовать. тар-type Тип таблицы, применяемой при вызове automount. Доступны такие типы: file обычный текстовый файл program выполняемая команда, которая принимает ключ из командной строки и, если все в порядке, возвращает адрес точки входа на стандартный вывод ур EflNIS nisplus расширенная БД NIS+ hesiod БД hesiod format Определяет формат данных таблицы; в настоящее время распознаются только два формата: sun - подмножество форматов для компьютеров Sun и hesiod; если формат не указан, по умолчанию для всех типов кроме hesiod принимается формат sun. тар Указывает расположение используемой таблицы. Это может быть абсолютный маршрут, если задан тип file или program, или имя БД, если задан ур, nisplus или hesiod. map-options Любые оставшиеся в командной строке аргументы без предшсств\ ю- щих дефисов рассматриваются как опции (-о) для команды mount. ции -р pid-file Записывает PID демона в файл pid-filc. -t timeout Устанавливает продолжительность тайм-аута в секундах, в течение которого каталоги остаются неподключенными. По умолчанию принимается продолжительность тайм-аута, рапная 5 минутам. -v Выводит Персию программы и завершает се рабогу.
П. Команды 61 awk - -к . команду gawk. badblocks - поиск "плохих" блоков на диске. ИНТ. ИС badblocks [-b block-size] [-о output_file\[-s] [-v] [ -w \device blocks-count [start-block] Команда badblocks сканирует устройство device (обычно раздел диска), которое является специальным файлом соответствующего устройства. Эта команда отмечает сбойные блоки. Команда badblocks может начать проверку с блока start-block и тестировать blocks-count блоков. Результаты проверки используются программами e2fsck и mke2fs. Опции -b block-size Указывает размер блоков (байты). -о output_file Записывает список "плохих" блоков в файл output Jile вместо стандартного вывода. Команды c2fsck и mkc2fs распознают формат этого файла -s Записывает номера блоков, как они проверялись. -v Подробно сообщает о происходящем. -w Использует тест для поиска сбойных блоков в режиме записи, записывая для этого специальные образцы в каждый блок устройства. Будьте осторожны! Эта опция уничтожает информацию! banner вывод заголовка. Синтаксис banner [-vn\message Выводит большой красивый заголовок message на стандартный вывод. ци -wn Устанавливает ширину строки вывода в и символов. Если л отсутствует, ширина строки вывода составляет 80 символов. Если отс>тств>ет опция -w, ширина строки вывода составляет 132 символа. Если аргумент message отсутствует, то на экран будет выведено приглашение Message: для ввода текста заголовка. Следующие символы ие могут использоваться для создания заголовка: < > Г ] \ Л { } | ~ (подчеркивание)
II Команды Примеры По киманде /u&r/ganies/baiuier -»v20 mishit будет выведен следующий заголовок: t f ttittttt t ttttttft I i tttttttt II tt t i tttt t tt t tt t ttt t t tttttttttttttt t t tttttttt t ttiit tt t t tttttttt t Заголовок был выведен в Red Hat Linux 6.0, для прорисовки букв использовался символ #, в других системах Linux это может быть символ *. basename - извлекает компоненты из полного имени файла, оставляя собственно имя файла. Синтаксис basename пате[ suffix] basename {—help, —version} Команда basename удаляет из полного имени файла, заданного аргументом name, имя каталога; если указывается суффикс suffix, который затем обнаруживается в конце имени файла, то он также удаляется. Результат обработки направляется на станлартный вывод. Оп ии —help Печатает краткое описание и правила применения команды. —version Печатает версию программы. suffix Указывает суффикс, сопоставляемый с концом полного имени файла Приме• $ basename /home/anna/gifOl.gif .gif gifOl $
II. Команды 63 bash осуществляет запуск оболочки, или командного процессора GNU Bourne-Again Shell. Синтаксис bash [option][file] Оболочка bash является sh-совместнмым интерпретатором командного языка, выполняет команды, прочитанные со стандартного ввода. Следует отметить, что bash также включает ряд полезных возможностей оболочек Korn(ksh) и C(csh). При вызове bash интерпретирует следующие флаги: -с siring Если присутствует флаг -с, то считывает команды со string. Если после string еще имеются аргументы, то они рассматриваются в качестве позиционных параметров, начиная с $0. -i При задании этого флага командный процессор работает в интерактивном режиме. -s Если задан этот флаг или после обработки больше не остается аргументов, считывает команды со стандартного ввода. Эта опция позволяет установить позиционные параметры, когда вызывается интерактивная оболочка. Единственный символ - знак минус - сигнализирует о завершении опций. Любые аргументы, поступившие после этого символа, рассматриваются как имена файлов и аргументы. Комбинация двух знаков минус эквивалентна одному знаку минус, bash также интерпретирует многосимвольные опции, которые должны появиться в командной строке до односимвольных. Основные опции -погс Не читает и не выполняет персональный файл инициализации -/.bashrc, если оболочка интерактивна. Эта опция устанавливается по умолчанию, если оболочка будет вызвана по команде sh. -noprofile He читает ни системный /etc/profile, ни один из персональных файлов инициализации —/.bash_profilc, -/.bashlogin, -/.profile. По умолчанию, будучи вызвана при регистрации, оболочка bash обязательно считывает содержимое вышеприведенных файлов. -rcfile file Выполняет команды из файла, заданного аргументом file, вместо того, чтобы использовать —/.bashrc, если оболочка интерактивна. -version Выводит при запуске номер версии командного процессора. -quiet "He отличается многословием" при старте - не выводит номер версии и дополнительную информацию. -login Командный процессор работает так, как если бы его вызвали в качестве предопределенной оболочки регистрации. -nobracccxpansion Не выполняет расширение выражений, стоящих в фигурныч скобках.
64 II Команды Если после обработки опций остаются еще необработанные аргументы и ми опция -с, и ни опция -s не задавались, предполагается, что первый ар|уменг - ото имя файла, содержащего команды оболочки. Если оболочка bash вызывалась подобным образом, то предполагается, что $0 установлен в имя файла, а остальные позиционные параметры последовательно установлены в значения оставшихся аргументов. bash читает и выполняет команды из файла, затем завершает свою работу. Код завершения командного процессора bash равен коду завершения последней команды. Пример Чтобы узнать, какая версия bash включена в состав дистрибутива, достаточно набрать такую команду: $ bash -version GNU bash, version 1.14.7(1) $ ЬЭХСП - выполняет последовательность запланированных К. команд. Синтаксис batch I-V][q gueue][-f file][-mv] В отличие от команды at начинает выполнение ранее запланированных команд, когда позволяет загрузка системы, при этом используется /bin/sh. Необходимость выполнить определенную последовательность команд часто связана с задачами системного администрирования. Суперпользователь всегда имеет доступ к этой команде и может определить, кто из пользователей его имеет. Для этого используются файлы /etc/at.allow и /etc/at.deny. Если файл /etc/at.allow существует, то доступ к команде имеют только пользователи, перечисленные в нем. Если этот файл отсутствует, но имеется файл /ctc/at.deny, то доступ к команде batch имеют все пользователи кроме перечисленных в файле. Если отсутствуют оба упомянутых файла, то batch недоступна обычным пользователям. Сначала вы вводите команду batch, а уже затем собственно сами команды, ввод которых завершается нажатием Ctrl+D. Набор введенных команд оседает в виде задания в очередях команды batch и будет выполнен в указанное время TIME или копа позволит загрузка системы. Вывод этих команд, если он существует, можно пол> чить по электронной почте. Опции -V Выводит номер версии программы в стандарт ный файл ошибок. -q queue Использует указанную очередь, обозначенную буквой, лежащей в интервалах от а до z и от А до Z. По умолчанию очередь а предназначена для команды at, очередь b - для команды batch. Очереди заданий, обозначаемые последующими буквами, будут запущены с более высоким чистовым значением приоритет а. Специальным символ знак равенства зарезервирован для обозначения очереди текущих з.шпний. Уели задание
II. Команды 65 входит в состав специальной очереди, обозначенной прописной буквой, это трактуется как передача его в распоряжение batch в заданное время, -f file Читает задания из указанного файла. "т Отправляет почтовое уведомление пользователю, когда задание будет выполнено, даже если отсутствует вывод. -v Показывает время, когда должно выполняться задание. Пример Планируется сортировка большого файла real, результат будет направлен в файл outfile: S batch sort real>outfile CTRL+D S batcher готовит пакеты новостей для указанного узла сети. Синтаксис (основные опции) batcher [-a arts\\-h total_arts][-b size][-B total_size][-i string] [-N num_batches\ [-S alt__spool][-v]host[input] Программа batcher готовит новости для узла host, накапливая их в виде пакетов. Программа batcher читает файл input или стандартный ввод, если файл не задан. Входной файл программы представляет собой набор строк, причем, пустые строки и строки, содержащие в начале символ #. игнорируются. Обычно строки состоят из одного или двух полей, разделенных пробелом. Первое поле включает в себя имя файла, содержащего статью: если не задан абсолютный маршрут к файлу, то принимается маршрут относительно каталога, содержащего спул новостей. Второе поле, если присутствует, указывает размер статьи в байтах. Основные опции -S alt_spool Если статья не найдена, указывает использование альтернативного каталога, содержащего спул новостей; это может быть каталог главного сервера с более длительным сроком хранения статьи, монтируемый через NFS. -v Обычно перед завершением работы batcher выводит статистику в syslog. Если указывается этот флаг, направляет статистику на стандартный вывод. -b size Программа накапливает поименованные статьи в пакетах. Этот флаг применяется, чтобы, задавая size, ограничить размер каждого пакета. По умолчанию размер пакета может достигать 60 Кбайт. Установив аргумент яге в значение -Ь0, можно работать с пакетами любого размера (в пределах разумного, допускаемых ОС и техническими средствами).
6b II Команды -a arts Задавая значение arts, можно ограничить количество статей в каждом пакете. По умолчанию ограничение отсутствует. Если размер пакета или количество статей в нем превышает заданный предел, будет задействован новый пакет новостей. -В totalsize Задавая значение totalsize, можно ограничить общий размер всех пакетов. -A total_arts Задавая значение totalarts, можно ограничить общее количество статей в пакетах. -N nam batches Задавая значение mtmbatches, можно ограничить общее количество пакетов. Во всех трех случаях - опции -В, -A, -N - по умолчанию принимаются нулевые значения, что означает отсутствие каких-либо ограничений. -i string Каждый пакет будет открывать строка string. Такая строка завершается символом newline (новая строка). По умолчанию начальная строка не задается. DC - выполняет вычисления с произволь " • • т. . К. Синтаксис be [-lwsqv][file...] Команда be вызывает интерактивный процессор С-образного языка, позволяющего выполнять вычисления с произвольной точностью. Сначала процессор считывает файлы/f/e, затем - стандартный ввод. Если в командной строке не задано имя файла, то данные и операции, которые над ними будут выполняться, вводятся непосредственно с клавиатуры. Для завершения работы с процессором be следует ввести оператор quit или нажать Ctrl+D. Опции -1 Вызывает стандартную библиотеку математических функций. -w Выводит предупреждения по поводу Posix-расширений be. -s Использует язык Posix be. -q He печатает обычного приветствия be. -v Печатает номер версии процессора и завершает программу. Операторы процессора + сложение / деление вычитание % нахождение остатка умножение л возведение в степень sqrt(n) извлечение корпя квадратного из числа и >= больше и пи равно
II. Команды 67 l= —* =/ =% =л =+ -- не равно присваивание присваивание присваивание присваивание присваивание присваивание ++ префикс к именам постфикс, или суффикс, к именам < меньше > больше = присваивание == присваивание <= меньше или равно scale=n установка точности вычислений, л - количество цифр после десятичной точки ibase=n установка основания системы счисления для входных данных, где и меняется от 2 до 16 obase=n установка основания системы счисления для выходных данных Ключевые слова процессора for(£,)[S...] выполняет операторы S, если выражение Е истинно if(£')[Sl...][else[S2...]] если Е истинно, выполняет операторы S\, в противном случае - 52 while(£)[S...] выполняет операторы S до тех пор, пока выражение Е истинно break производит прерывание циклов for и while continue осуществляет переход к следующей итерации цикла for; это ключевое слово разработано как GNU-расширение halt останавливает работу be return возвращает код 0 при выходе из функций return{£) возвращает при выходе из функций значение выражения Е Ши окоизвестные функции математической библиотеки s(jc) синус х, где х берется в радианах с(х) косинус х, где х берется в радианах е(лг) экспонента 1(jc) натуральный логарифм х а(х) арктангенс х, возвращает радианы j(n^c) функция Бесселя Пример Следующий маленький фрагмент программы определяет аппроксимированные значения экспоненты для первых ста целых чисел: for{i=l;i<=100;i++) e(i)
68 II Команды bdflush - демон ядра, сбрасывающий содержимое грязных буферов на диск. Синтаксис bdflush [option] Демон bdflush записывает через равномерные промежутки времени измененные блоки данных буферов на жесткий диск. Продолжительность временного интервала различна для буферов данных и метаданных (каталоги, растровые файлы и т.д.). По умолчанию устанавливается продолжительность промежутка перезаписи для буферов данных в 30 секунд и для буферов метаданных в 5 секунд. bdflush обычно вызывает второго демона, и именно этот второй демон осуществляет традиционный процесс обновления данных. Оба демона обычно (а в некоторых версиях Linux лишь так) запускаются из /etc/rc одной командой /sbin/update. Опции -d Выводит на экран параметры ядра. Использование этой опции препятствует запуску демона. -h Печатает краткое описание опций. -s sync-delay Использует старую особенность обновления: при этом по умолчанию каждые 30 секунд вызывается sync. -f flush-delay Сбрасывает буфер через указанное число секунд; по умолчанию каждые 5 секунд. -0 Определяет максимальную часть списка LRU (см. параметры ядра в приведенном примере), которую следует проверять при поиске "грязных" блоков. -1 Определяет максимальное число блоков (см. параметры ядра), которое следует записывать всякий раз при активизации bdflush. -2 Определяет количество "чистых" буферов, загружаемых в список свободных. -3 Определяет пороговое значение числа "грязных" блоков для активизации bdflush (см. параметры ядра). -4 Задействует процент области кэша при поиске свободных кластеров (см. параметры ядра). -5 Задает продолжительность временного интервала для буферов данных (см. параметры ядра). -6 Задает продолжительность временного интервала для бЧферов метаданных (см. параметры ядра). -7 Указывает среднее значение временной константы для з.н ручки б\ фер- ного кэша (см. параметры ядра).
II. Команды 69 - 8 Устанавливает коэффициент LAV, использующийся для определения порогового значения при уничтожении буфера. Пример А вот как Moryi выглядеть параметры ядра, распечатываемые по команде /sbin/update -d: bdflush version 1.4 0: 40 Max fraction of LRU list to examine for dirty blocks 1: 500 Max number of dirty blocks to write each time bdflush activated 2: 64 Num of clean buffers to be loaded onto free list by refill_freelist 3: 256 Dirty block threshold for activating bdflush in refill_freelist 4: 15 Percentage of cache to scan for free clusters 5: 3000 Time for data buffers to age before flushing 6: 500 Time for non-data (dir, bitmap, etc) buffers to age before flushing 7: 1884 Time buffer cache load average constant 8: 2 LAV ratio (used to determine threshold for buffer fratricide). bdftopcf - конвертирует шрифты формата BDF в формат PCF. Синт кси bdftopcf [-pn][-un][-m][-l]I-M][-LJ[-t][-i][-o outputfile] fontfile.bdf Команда bdftopcf вызывает компилятор шрифтов для Х-сервера и сервера шрифтов, компилируя исходный файл fontfile.bdf. Полученные шрифты в формате PCF могут быть прочитаны на компьютерах любой архитектуры. Хотя на "родном компьютере" они без реформатирования читаются быстрее, но вполне переносимы на компьютеры других архитектур, где процесс их чтения идет медленнее. Опции -ри Устанавливает размер строки развертки в л байт, где л принимает значение 1,2,4 или 8. -ии Указывает положение строки развертки, что является существенным, когда порядок расположения бит в шрифте отличается от порядка байт; л принимает значение 1, 2 или 4. -ш Задает порядок бит в шрифте, при этом старший бит является первым. -1 Задает порядок бит в шрифте, при этом младший бит является первым. _М Задает порядок байт в шрифте, при этом старший байт является первым. Все многобайтные данные файла - метрики, монохромные растры и все прочее - записываются подобным образом. _L Задаст порядок байт в шрифте, при этом младший байт является первым. Все мпогобайтные данные файла - метрики, монохромные растры и все прочее - записываются подобным образом.
70 II Команды -t Конвертирует шрифты в так называемые " терминальные", если это вот- можно, что значительно ускоряет их обработку Х-сервсром. -i Отменяет обычное вычисление метрик шрифта. -о outpiitfile Записывает шрифты в формате PCF в файл по имени ouiputfile. По умолчанию конвертированные данные направляются «а стандартный вывод. DCJ - запускает прерванный процесс в фоновог р- л «е. В Синтаксис Ьд Команда bg встроена в командный процессор, или оболочку bash. Предположим, вы запустили "долгоиграющую" команду. Нажав Clrl+Z, можно прервать процесс. А затем уже с помощью команды bg запустить его в фоне, при этом набирая в приглашении командного процессора другие команды. Приме > Остановленный процесс переведен в фон: ш\ misha@localhost.localdomain:/home/misha j [1]+ Stopped find / -name btyy -print I [mishaGlocalhost mishalt ps -au j USER PID ZCPU ZMEM VSZ RSS TTY STAT STftRT TIME COMMAND ! misha 1258 0.1 3.2 1744 980 pts/0 S 00:15 0:00 bash j misha 1268 0.3 1.5 1180 488 pts/0 T 00:16 0:00 find / -name btyy I misha 1269 0.0 2.2 2336 700 pts/0 R 00:17 0:00 ps -au j [mishaGlocalhost misha]! bg ! [1]+ find / -name btyy -print & i [mishaGlocalhost mishall find: /tmp/kfm-cache-O: Permission denied ! find: /tmp/orbit-sofia: Permission denied bison генерир ет синтаксические анализаторы. Синтаксис bison [-b file-prefix][-d]l-k][-l][-n](-o outfiie][-p prefix)[-r][-t] [-v][-V][-y][-h] grammar-file bison - это программа GNU в стиле известного анализатора уасс, который присутствует во многих системах Unix. Для входных файлов уасс соблюдается совместимость "снизу вверх". Команда bison создаст для грамматического анализа программ} на я 1ыке С\ состоящую из таблиц и правил обработки. Имена входных файлов, следуя принятой п уасс договоренности, эапершакчея комбинацией двух символов - .у. В отличие от уасс, сгенерированные файпы не имекч
II. Команды 71 фиксированных имен, но зато используют префикс входного файла. Например, на основе файла по имени parse.y, содержащего [рамматические описания, будет создан анализатор parse.tab.c, хотя в уасс аналогичный файл получил бы имя y.tab.c Аргумент grammar-file задает файл грамматических описаний. Опции -b file-prefix Указывает префикс, используемый для создания имен всех выходных файлов bison. Создаваемые имена выбираются так, как если бы входные файлы имели имена типа file-prefixx. -d Создает дополнительный выходной файл, содержащий признаки типов имен, определенных в грамматике, семантическое значение типа YYSTYPE, а также несколько объявлений внешних переменных. Если выходной файл анализатора имеет имя вида пате.с, то этот файл зовется пате.Ъ. -г Номера признаков (маркеров) из файла name.h обычно транслируются в уасс-совместимые. В случае задания этого переключателя непосредственно переводит номера в выходной файл. Программа bison назначает последовательные номера признаков, начиная с 3. -к Опция назначает выходной файл name.tab.c, чтобы включить список признаков имен в порядке следования их номеров; это определяется в массиве yytname. Также генерируются определения для YYTOK.ENS, YYNNTS, YYNRULES и YYNSTATES. -1 Не включает команды препроцессора в файл грамматического анализатора. Обычно bison включает их в файл анализатора, поэтому компилятор С и отладчики "привязывают" ошибки к исходному файлу - файлу грамматических описаний. Эта опция позволяет ассоциировать ошибки только с файлом грамматического анализатора, рассматривая его как независимый файл со своими собственными правами. -п Не генерирует код анализатора в выходной файл, ограничиваясь только созданием описаний. -о outfile Устанавливает имя файла грамматического анализатора. Другие имена выходных файлов строятся на основе outfile, как указано в описании переключателей -v и -d. -р prefix Переименовывает внешние символы (идентификаторы), используемые грамматическим анализатором, таким образом, чтобы они начинались с prefix вместо уу. В список переименованных символов входит у\ parse, yylex, yyerror, yylval, yychar, yydebug. Благодаря этой опции имена преобразовываются в cparsc, clcx и т.д., если, например, используется -р с. -t Включает выходное определение макроса YYDEBUG в файл грамматического анализатора, таким образом отладочные особенности также компилируются. .у Печатает версию программы bison и завершает ее. _У Имитирует договоренности уасс относительно имени выходного файла, т.е. выходной файл грамматического лши и тора на шваек-к vtah.c.
72 II Команды два других выходных файла соответственно называются y.output и y.tab.h. -h Печатает все опции программы bison и завершает ее. -v Записывает дополнительный выходной файл, содержащий подробные описания синтаксического анализа и перечень разрешенных и неразрешенных конфликтов. иШПЗр - редактор монохромных растровых изображений в системе X Window. Синтаксис bitmap [option ] [filename] [basename] Программа bitmap - инструмент для создания и редактирования монохромных (черио-белых) растровых изображений, которые используются в X для изображения замкнутых областей, указателя мыши, пиктограмм. Изображения хранятся в виде исходного текста на языке С, поэтому файлы рисунков можно непосредственно включить в программу с помощью команды #includc. Опции командной строки -size WIDTHy-HEIGHT Указывает размер сетки (решетки) в прямоугольниках (в клетках). -sw dimension Указывает ширину dimension прямоугольников сетки в пикселах. -sh dimension Указывает высоту dimension прямоугольников сетки в пикселах. -gt dimension Задает ограничение размера сетки. Если размер стороны прямоугольника становится меньше значения dimension, сетка автоматически отключается. -grid Включает вывод сетки. +grid Отключает вывод сетки. -axes Включает вывод осей координат. +axes Запрещает вывод осей координат. -dashed Включает изображение рамки и сетки пунктиром. +dashed Отключает изображение рамки и сетки пунктиром. -stippled Включает возможность выделения областей. +stippled Запрещает выполнять выделение областей. -proportional Включает режим пропорциональности изображений, при этом ширина и высота прямоугольников будут равны (возникают квадратики), в противном случае - размеры прямоугольников пропорциональны размеру окна. +proportional Отключает режим пропорциональности нзобр.гженкй.
II. Команды 73 -dashes filename Указывает файл по имени^/епсте, в котором хранится растровое изображение штрих-пунктирных линий. -stipple filename Указывает файл по имени filename, в котором хранится растр, осуществляющий выделение объекта. -hi color Параметр color указывает цвет выделенных областей. -fr color Параметр color указывает цвет рамки и линий сетки. filename Задает файл, содержащий первоначально загружаемое растровое изображение; если аргумент_/?/елате отсутствует, программа bitmap будет создавать новый файл. basename Указывает имя, используемое для идентификации изображения в выходном файле на языке С. Программа bitmap выводит сетку, в которой каждый прямоугольник представляет единственный бит редактируемого изображения. Если необходимо увидеть, как будет выглядеть создаваемое или редактируемое изображение, следует нажать Meta+I. Чтобы вернуться к исходному изображению и продолжить его редактирование, придется в текущем окне нажать левую кнопку мыши или вновь Meta+I. Растровое изображение может использоваться для представления курсора, при этом один из прямоугольников изображения назначается в качестве "горячей" точки, определяющей положение конца указателя. Если указатель имеет вид стрелки или пальца, то "горячая" точка находится на его конце. Если указатель имеет вид перекрестия, то "горячая" точка находится в его центре. Чтобы отредактировать растровое изображение, достаточно просто щелкнуть на одной из кнопок с командами рисования: Point (точка), Curve (кривая), Line (линия), Rectangle (прямоугольник) и т.д., а затем перевести указатель в растровое окно с сеткой. Нажав одну из кнопок мыши, можно выполнить задуманное действие. Пользователь может установить, очистить или инвертировать прямоугольнички сетки. Установка прямоугольника соответствует установке бита изображения в 1; очистка - установке бита изображения в 0. Инвертирование устанавливает бит изображения в 1. если предшествующее значение его было 0, или в 0, если предшествующее значение - 1. Существуют также команды копирования и переноса области сетки из одного места в др\ - гое. Можно перевернуть изображение, сдвинуть его на один пиксел вверх, вниз, вправо или влево. fomptOPpm - конвертирует BMP-файл Microsoft Windows или OS/2 в мобильный pixmap. Синтаксис bmptoppm [bmpfile] Эта программа не конвертирует BMP-файлов со сжатыми данными и НМР-ф.шлов с 16-ю бит на пиксел и соответственно пыдаст сообщение об ошибке.
74 II Команды bmt03 утилита конвертирования для системы X Windo •/. Си к ис bmtoa (-chars cc] I filename] Конвертирует растровые файлы в строки формата ASCII. Опции -chars cc Указывает пару символов, используемых в строковой версии растрового изображения. Первый символ представляет нулевые биты, а второй символ - единичные биты. По умолчанию применяется символ дефиса (знак минус) для нулевых битов и символ # - для единичных битов. buffchan - буферизованный интерфейс для InterNetNews, осуществляющий запись в файлы. Синтаксис (основные опции) buffchan [-b][-c lines][-C seconds][-d directory\{-i fields][-ш map] [-p pidfile][-l Jines](-L seconds][-u] Считывает строки стандартного ввода и копирует некоторые поля каждой строки в файлы, имена которых определены в специальных полях строки, buffchan вызывается innd для реализации подачи по частям (компонентам). '. Основные опции -Ь Открыв файл, buffchan держит его открытым. Нельзя указывать больше входных файлов, чем количество допускаемых в системе дескрипторов. Если задан флаг -Ь, программа выделяет буфер и подключает его к файлу, используя системный вызов sctbuf (буферизация потоков). -с lines Параметр lines задает количество строк, после записи которых в файл, последний вновь будет открыт программой buffchan. -С seconds Закрывает все файлы, а затем вновь открывает через указанное количество секунд seconds. -d directory Указывает перед стартом программыальтернативный каталог для нее. -f fields buffchan рассматривает входной файл как набор строк. Каждая строка содержит фиксированное число исходных полей, за которыми следует переменное количество полей, содержащих имена файлов. Все поля в строке разделены пробелами. По умолчанию число исходных полей равно 1, с помощью/zeM.v можно указать требуемое количество. -т тар Использует файл отображения тар. Пустые строки и строки, начинающиеся с символа # (комментарий), обычно в нем игнорируются. Все остальные строки должны содержать дпи имени узла, разделенных
II. Команды 75 двоеточием. Первое поле - это имя, которое может появиться во входном потоке. Обычно используется второе имя. -р pidfile Программа buffchan запишет строку, содержащую ее PID, в файл/ж#?/е. -1 lines Обработав число строк, равное lines, программа buffchan с помощью функции (flush произведет их запись в файл на диске. -L seconds Наполняет все файлы через количество секуид, заданное seconds. -и Флаг -и позволяет записать небуферированный вывод. Строки, обрабатываемые buffchan, могут начинаться с восклицательного знака. Такие строки интерпретируются как команды (buffchan вызывается для подпитки). Существует три команды: flush, drop и readmap. Команда flush закрывает все открытые файлы, а затем вновь открывает их. Команда drop подобна flush за исключением того, что с помощью drop можно вновь открыть не все файлы. Команда readmap перезагружает файл отображения, передаваемый с помощью опции -т тар. Пример Файл отображения часто применяется, чтобы преобразовать короткие имена (см. листинг ниже) в полные доменные имена: uucopy:push.copy.net torn:tom.com funnary:funnary.uu.net bunzip2 - производит распаковку файлов. Синтаксис bunzip2 [-fkvsVL][filename—] Распаковывает и восстанавливает все указанные файлы_/?/е/ште^. чьи имена заканчиваются на .bz2. Файлы, имена которых не содержат такого суффикса, игнорируются. ции -f Принудительно перезаписывает, что обычно не делает, существующие файлы. -к При распаковке сохраняет входные файлы. _s Сводит до минимума требования к оперативной памяти, необходимой для работы программы. Это означает, что для распаковки любого файла использует всего 2300 Кбайт оперативной памяти, хотя скорость обработки при этом упадет в среднем почти в два раза. Если ваш компьютер имеет не более 8 Мбайт оперативной памяти, всегда используйте тгу опцию. -v Выводит протокол обработки. -V Выводит версию при раммы. _L Выводит лицензионные услопия и соглашения, относящиеся к программе.
II Команды Пример С помощью команды bunzip2 -fk prim3.bz2 распаковывается и восстанавливается файл, рассматриваемый в примере для команды bzip2 (см. эту команду). bZC3t - распаковывает файлы и выводит результаты на стандартный вывод. Синтаксис bzcat [ -s )I filename...) Опции -s Сводит до минимума требования к оперативной памяти, необходимой для работы программы. Это означает, что для распаковки любого файла требуется всего 2300 Кбайт оперативной памяти, хотя скорость обработки при этом упадет в среднем почти в два раза. Если ваш компьютер имеет не более 8 Мбайт оперативной памяти, всегда используйте эту опцию. Распаковывает файлы, ранее созданные с помощью bzip2. DZipZ - утилита упаковки файлов. Синтаксис bzip2 [-cdfkstvzVL123456789][filename...] Производит упаковку файлов, используя алгоритм поблочной сортировки текста Бурровс-Вилера (Burrows-Wheeler) и кодирование по Хаффману (HafTman). Утилита bzip2 принимает список имен файлов^/епате. Каждый исходящий файл замещается своей сжатой версией, имя которой создается путем добавления суффикса -bz2 к оригинальному имени файла. Каждый сжатый файл имеет те же полномочия и дату модификации, что и оригинальный. Так что все эти свойства могут быть корректно восстановлены в процессе распаковки. Если не указаны имена файлов, bzip2 упаковывает информацию стандартного ввода и результат направляет на стандартный вывод. Утилита bzip2 упаковывает файлы поблочно, обычно используются блоки длиной 900 Кбайт. Каждый блок содержится независимо, что позволяет в случае сбоев корректно восстанавливать информацию неповрежденных блоков. Основные опции -с Направляет результат на стандартный вывод. -d Принуждает выполнять распаковку; b/.ip2, bun/.ip2 и bzcat - ito. собственно говоря, одна и та же программа. И решение о том. какие действия производить, строится на основе используемого имени. Эгот флаг отменяет упомянутый механизм и принуждает выполнить расианпнь\ файла.
II. Команды 77 -z Подобно опции -d осуществляет принудительное действие - сжатие, невзирая на имя файла. -t Проверяет целостность указанных файлов, ие распаковывая их. -f Принудительно перезаписывает файлы. Обычно bzip2 не производит перезапись уже существующих файлов. -к При сжатии сохраняет входные файлы. -s Сводит до минимума требования к оперативной памяти, необходимой для работы программы, размер блока при этом выбирается равным именно 200 Кбайт. Если ваш компьютер имеет не более 8 Мбайт оперативной памяти, всегда используйте эту опцию. -v Показывает коэффициент сжатия для каждого обрабатываемого файла. -V Выводит версию программы. -L Выводит лицензионные условия и соглашения, относящиеся к программе. от -1 до -9 Устанавливает при сжатии соответственно следующие размеры блока: 100 Кбайт, 200 Кбайт ... 900 Кбайт. Пример Распечатаем элемент оглавления для файла prim3: 5 Is -l prim3 -rw-r—г— 1 soot noot 4953 Apr 6 15:55 prim3 $ Произведем упаковку файла prim3: $ bzip2 -kv prim3 prim3: 4.093:1, 1.954 bits/byte, 75.57% saved, 4953 in, 1210 out. $ Распечатаем элемент оглавления для файла prim3.bz2: $ Is -1 prim3 -rw-r—r— 1 soot noot 1210 Apr 6 15:55 pri.m3.bz2 $ Действительно, оригинальный файл размером 4953 байт занимает в архиве 1210 байт. bZip2rGCOVGr - восстанавливает информацию поврежденных архивных файлов, ранее упакованных илитой bzip2. Синтаксис bzip2recover filename Задачей утилиты bzip2recovcr является последовательный выбор блоков архивного файла, ранее упакованного bzip2, и запись каждого in них в отдельный файл, в имени
78 II. Команды которою обязательно присутствует суффикс .bz2. С помощью команды bzip2 -t можно проверить целостность полученных файлов, а затем распаковагь неповрежденные. Утилита берет единственный аргумент, имя поврежденного файла, и создает файлы по числу блоков: rec001filc.bz2, rcc002filc.bz2 и т.д. Затем с помощью команды bzip2 -de rec*file.bz2»recover_file можно произвести распаковку и восстановленную информацию записать в файл recovcr_file. Имеет смысл применять bzip2recovcr для поврежденных файлов большого размера, содержащих много блоков. Бессмысленно использовать утилиту для файлов, содержащих всего один блок, так как поврежденный блок восстановлению не подлежит. c++filt - преобразует символы C++. Синтаксис c++filt [-_|—strip-underscores] [-s{gnu, lucid, arm}|—format={gnu, lucid, arm}][—help] [—version] [symbol — ] Язык программирования C++ предлагает такую возможность, как перезагрузка функций, т.е. использование одного имени для многих функций с различными типами параметров. Все имена функций C++ преобразуются в низкоуровневые ассемблерные метки (этот процесс называется mangling - искажение). c++filt преобразует низкоуровневые имена в пользовательские высокоуровневые таким образом, что компоновщику удается корректно получить эти перезагружаемые функции. Каждый алфавитно-цифровой идентификатор, включающий буквы, цифры, символы подчеркивания, доллары или точки, выглядит на входе как потенциальная метка. Если метка декодируется в имя языка C++, то это имя замещает на выходе низкоуровневое имя. Если аргументы symbol отсутствуют, программа c++filt считывает имена символов (идентификаторов) со стандартного ввода и записывает преобразованные имена на стандартный вывод. Опции -_, --strip-underscores Удаляет символ подчеркивания, стоящий в начале имени. В некоторых системах компиляторы С и C++ используют символ подчеркивания перед каждым именем. Скажем, имя loo преобразуется в низкоуровневое имя loo. -s{gnu, lucid, arm}, —format={gnu, lucid, arm} Выбирает один из трех методов преобразования: первый используется компилятором GNU, он также применяется по умолчанию. —help Выводит информацию об опциях программы и (анершает ее рмчп). —version Выподит информацию о версии программы и завершает се paGorv
II. Команды 79 L»dl - :. водит календарь. Синтаксис cal f-mjyl [month [year]] Выводит обычный календарь. Если аргументы не указаны, выводится календарь иа текущий месяц. Оп ии -т Выводит понедельник как первый день недели. -j Выводит даты юлианского календаря (номера дней в году, начиная с 1 января). -у Выводит календарь на текущий год. Единственный аргумент указывает год (year) в диапазоне 1-9999; год должен задаваться полностью: команда cal 97 распечатает календарь на 97 год, а не на 1997 год. Два аргумента указывают месяц (month) в диапазоне 1-12 и год. Переход к грегорианскому календарю состоялся 3 сентября 1752 года. Пример Календарь на январь 2001 года можно получить следующим образом: $ cal 1 2001 Января 2001 Be Пн Вт Ср Чт ПТ Су 12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 S СЗТ - конкатенирует (объединяет) файлы и направляет К. их на стандартный вывод. Синтаксис cat [option] [file—] Команда cat записывает содержимое каждого заданного файла или стандартного ввода, если имена файлов не указаны или вместо имени стоит дефис, на стандартный вывод. Опции -Ь, — number-nonblank Нумерует все непустые строки пыходного файла, начиная с 1.
80 II Команды -е Эквивалентно -vE. -n, —number Нумерует все строки выходного файла, начиная с 1. -s, —squeeze-blank Заменяет набор пустых строк единственной пустой строкой. -t Эквивалентно-vT. -и Игнорируется; опция определяет совместимость с Unix. -v, —show-nonprinting Выводит управляющие символы кроме символов перевода строки и табуляции, используя при этом символ Л. -A, —show-all Эквивалентно использованию -vET. -Е, —show-ends Выводит в конце каждой строки символ S. -Т, —show-tabs Выводит символы табуляции в следующем формате - Л1. —help Выводит краткое описание опций и завершает работу программы. —version Выводит краткую информацию о версии программы. Изначально команда cat предназначалась для объединения файлов. Можно ее также использовать для вывода на экран содержимого небольших файлов. При попытке просмотреть большие файлы их содержимое быстро промелькнет перед глазами - пользователю мало проку от такого сервиса. Правда, с помощью комбинации клавиш Ctrl+S можно приостановить вывод, а затем вновь продолжить его, нажав Ctrl+Q. Но проще использовать для просмотра больших файлов команды more и less: они производят поэкранный вывод содержимого. Примеры Ниже показано слияние трех файлов в один большой файл по имени bigfile: $ cat filel file2 file3>bigfile Следующая команда создает файл с именем newfile и направляет в него все, что пользователь введет с клавиатуры: $ cat>nevfile Чтобы завершить ввод информации в файл, следует нажать Ctrl+D Ниже показано, как можно дописать содержимое файла source в конец файла target: $ cat source»target $ Трудно предположить, что может быть общего между командой cat и воспроизведением звука. Однако, воспроизведение с помощью cat звукового файла с расширением .wav или .voc может правильно звучать на устройстве /dev/dsp: $ cat sample.voc>/dev/dsp $ cat sample.wav>/dev/dBp $
II. Команды 81 Упомянутая команда может выполняться с любым файлом с расширением .аи: S cat sample.au>/dev/audio $ CCCPj ИЛИ Срр запуск препроцессора, используемого компилятором С перед компиляцией программы. Синтаксис (основные опции) ссср [-SH-A predicate [<raiue>] ] [-C] [-D name[=definition]][-dD][-dH] [-1 directory][-E][-x iaug](-M[-MG]][-MD file][-nostdinc][-nostdinc++J [ -P] 1 -traditional][-trigraphs][-u name][-undef)[-Wtrigraphs] [-Wtraditional][infile\-][ootfile\ -] Препроцессор С - это макропроцессор, автоматически используемый интегрированным компилятором языков программирования С и C++. Благодаря препроцессору можно трансформировать исходную программу до ее компиляции. Если вы собираетесь использовать препроцессор С, нет смысла специально вызывать его. Компилятор языка программирования С способен вызвать его автоматически. Тем не менее, препроцессор полезен сам по себе. Препроцессор читает файл infile вместе с другими файлами, указываемыми директивой #include. Выполнив преобразования исходного файла на языке С, отправляет результат в файл outfile. Если отсутствует infile или outfile, соответственно принимается стандартный ввод или стандартный вывод. Препроцессору языка С присущи следующие особенности: □ Включение файлов заголовков (headers). Обычно это файлы описаний, которые могут быть включены в программу. □ Макрорасширения. Можно определить макрос, который в дальнейшем будет заменен его определением. Q Условная компиляция. Используя специальные препроцессорные директивы, можно включать или исключать части программ в соответствии с различными условиями. D Построчный контроль. Если исходная программа представляет из себя комбинацию нескольких файлов, можно информировать компилятор, откуда поступает строка. Ниже дан перечень опций препроцессора; эти опции могут быть автоматически переданы препроцессору, когда он вызывается компилятором. Основные опции -Р Запрещает генерацию строк, начинающихся с символа # и содержащих номер строки. -С Не исключает комментарии: передаст их прямо в выходной файл. -trigraphs Обрабатывает стандартную последовательность трех символов. Эти стандартные последовательности обычно начинаются с дв>х вопросительных знаков, за которыми следует собственно определяемый
82 II Команды -Wtrigraphs -traditional -Wtraditional -I directory -nostdinc -nostdinc++ -D name символ. Например, комбинация трех символов ??/определяет обратный слэш, а комбинация ??/п определяет ncwlinc (символ новой строки). Выдает предупреждения, если неожиданно встречает trigraphs. Пытается имитировать особенности "старого" С. Предупреждает о некоторых конструкциях, отличающихся в традиционном и ANSI С. Добавляет каталог directory в конец списка каталогов для поиска файлов с заголовками. Не просматривает стандартные системные каталоги в поисках файлов заголовков. Только просматривает каталоги, определенные с помощью опции -I, а также текущий каталог. Не просматривает в поисках файлов заголовков специфические стандартные каталоги C++, но все же просматривает другие стандартные каталоги. Предопределяет имя пате в качестве макроса с определением 1. D name-definition Предопределяет имя пате в качестве макроса с определением definition. Вообще говоря, не существует ограничений на содержимое definition, но, если оно вызывается из оболочки, необходимо помнить о синтаксисе оболочек и иногда заключать символы в кавычки. Не предопределяет имя пате. Если для одного имени указаны две опции -U и -D, то опция -U "забивает" опцию -D. Не предопределяет никаких нестандартных макросов. A predicate <value> Добавляет так же, как директива #assert, имя предиката predicate с его элементарным значением. Можно использовать -А-, чтобы отменить все предопределенные утверждения, а заодно и отменить все предопределенные макросы. Вместо вывода результатов работы препроцессора распечатывает список директив #define для всех макросов, определенных в период работы препроцессора, включая предопределенные макросы. Подобна опции -dM за исключением следующих двух различий: не включает предопределенные макросы, зато включает в выходной файл как директивы #define, так и результаты препроцессорной обработки. Вместо вывода результатов препроцессорной обработки выводит правило, предназначенное для утилиты make, описывающей существуйте зависимости главного (main) исходного файла. В этом случае вывод содержит имя объектного файла, соответствующего данному исходному, двоеточие, а также имена всех включаемых файлов. Fcjiu число включаемых файлов значительно и правило разбивается на нескочько строк, в качестве символа продолжения применяется обратный сл.пи. Опция -MG предлагает рассматривать пропущенные фанчы зтч>лов- ков (headers) как создаваемые файлы, находящиеся в том же каталоге. -U пате -undef -dM -dD -M[-MG]
II. Команды 83 где расположен исходный файл. Эта особенность используется утилитой такс при автоматическом обновлении файлов -MD file Подобна опции -М, но в отличие от нее информация по зависимостям записывается в файл/?/е. Однако при вызове gcc не следует определять аргумент/i/e; gcc создает имена файлов путем замещения суффикса .с на .d в именах входных файлов. -Н Печатает имя каждого файла заголовка в дополнение к другим обычным действиям. -х lang Указывает исходный язык, где lang принимает такие значения: с язык С C++ язык C++ objective-c язык Objective-C assembler-with-cpp язык Assembly (ассемблер) -$ Запрещает использовать в идентификаторах символ $. Эта опция доступна при непосредственном вызове ерр; команда gcc не воспринимает эту опцию в командной строке. cd выполняет переход в другой каталог. н -к и cd new-directory Аргумент new-directory указывает новый каталог, в который следует перейти. В Linux текущий каталог представляется одной точкой, родительский каталог - двумя, рабочий каталог пользователя обозначается символом ~ (тильда). СОР - интерактивная программа для управления и воспроизведения аудио компакт-дисков под Linux. Синтаксис cdp [-h|-l|-n|-s][play вит] cdplay [-h|-l|-n|-s][play пит][stop][table] cdp - это интерактивная программа в режиме текстового интерфейса для воспроизведения аудио компакт-дисков в Linux. Она базируется на WorkBonc, которая, в свою очередь, основана на модулях hardware.c, databasc.c и struct.c из тщательно разработанной CD-программы под XII, известной как WorkMan. cdp будет искать устройство /dev/cdrom, но если у вас другое устройство для компакт-дисков, зайдите в /dcv и с помощью команды In yciammiue мягкую ссылк) на cdrom. Команда cdplay - это нсинтерактивная версия cdp.
84 М Команды -s Стартует без сообщений. -h Выводит краткое описание опций и завершает работу программы -п Не использует режим автоматического воспроизведения. -1 Запускается в режиме медленного старта (в ожидании init). play пит Выполняет автоматическое воспроизведение с указанной дорожки пит компакт-диска, stop Останавливает CD. table Выводит таблицу содержимого CD из БД. Команда cdp отображает базы данных CD так, как сгенерировано программой WorkMan. Эту информацию можно редактировать. cdp использует цифровую клавиатуру (блок клавиш в правой части стандартной АТ- клавиатуры), позволяющую переходить от одной дорожки звукозаписи к другой, создавать паузу, останавливать и возобновлять воспроизведение аудио компакт-дисков. Далее перечислены функции отдельных клавиш цифровой клавиатуры: 9 8 7 6 5 4 3 2 1 0 . enter а с воспроизведение пауза/возобновление останов следующая дорожка повтор воспроизведения предшествующая дорожка перемещение вперед в течение 15 секунд досрочное прекращение (музыкальное звучание прекращается) перемещение назад в течение 15 секунд мягкое завершение (музыка продолжается) нажатие клавиши с точкой вызывает подсказку редактирование текущей песни редактирование исполнителя песни редактирование имени CD Пример Так выглядит экран cdp: Artist CD Name Tracks Number Total Play Time 12 48:33 STOP <- « QUIT II RESTART EJECT PLAY -> » HELP playing #1 0:44 0:4e(] 1 2 3 л 0:02 4:54 8:23 "•« 4:S2 3:29 4:30 /1 ЛП
II. Команды 85 Во время работы программа cdp показывает номер текущей дорожки, а также общее затраченное время и время, затраченное на воспроизведение текущей дорожки В общее, затраченное на компакт-диск, время включается период прохождения дорожек не с аудиоинформацией помимо времени, затраченного на воспроизведение проигрываемых дорожек. cdrecord - выполняет запись информации или аудиоданных на компакт-диски. Синтаксис cdrecord [general_ options] dev=device ltrack_options] track 1.. .trackB Команда cdrecord осуществляет операцию записи компакт-дисков на специальных записывающих устройствах согласно Orange Book (в соответствии со стандартами "Оранжевой книги") в формате, предусматривающем многосессионную запись на компакт-диски. "Прожиг", или создание, своих собственных CD - подлинное искусство для энтузиастов мультимедиа в Linux. CD (а вскоре и DVD) стали стандартными носителями для мультимедийного содержимого из-за большого размера их файлов. Вы можете использовать CD, чтобы • Записывать и хранить на компакт-дисках разную мультимедийную информацию: файлы резервирования, графические образы, музыку • Копировать аудиодорожки (извлекать содержимое музыкальных дорожек) музыкальных компакт-дисков и создавать для индивидуального использования музыкальные CD В Linux создание CD является двухшаговым процессом. Сначала с помощью команды mkisofs нужно создать образ, специальный файл в формате ISO9660. А затем с помощью cdrecord записать этот образ на носитель. Обращение к записывающему устройству происходит через SCSIBUS/Device/LUN (шину, устройство, номер логического устройства); эти, разделенные косой чертой элементы, являются целыми числами. Команда cdrecord с опцией -scanbus позволяет получить эту информацию. В командной строке общие опции (general_ options) должны стоять до имени любого файла дорожки или опций дорожки (trackoplions). Основные общие опции -version Выводит информацию о версии программы и завершает ее. -v Выводит подробные сообщения, позволяющие наблюдать за ходом процесса. -V Расширяет объем выводимой информации за счет отладочной информации транспортного протокола SCSI. Двойная опция -W дополнительно позволяет получить содержимое буфера данных. -d, debug=# Устанавливает уровень отладки в указанное значение # или > меньшзст до 1, если только задана опция -d. Опция -dd эквивалентна dcbug-2 (выводит размеры и типы секторов). Испольюванпс данной опции с)те-
86 II Команды ственно замедляет весь процесс и может даже стать причиной нело грузки буфера. -s, -silent He печатает отчет по состоянию аварийно завершенных SCSI-команд. -force Вынуждает продолжать процесс даже в случае некоторых ошибок. С этой опцией нужно соблюдать осторожность в ряде сбойных ситуаций, могущих привести к повреждению носителя, так как при использовании -force отключаются многие виды проверок. С другой стороны эта опция обеспечивает некоторые уловки, позволяющие очищать сбойные диски CD-RW. -dummy Записывающее устройство CD проходит все стадии процесса, но лазер остается нетронутым. -dao Устанавливает режим SAO (см. приложение VI). Только работает с устройствами ММС. -raw Устанавливает низкоуровневый режим записи; эта опция аналогична -raw96r. -raw96r Выбирает режим записи с секторами по 2352 байта плюс 96 байтов данных упакованного подканала P-W, что в результате создает сектор размером 2448. Это предпочтительный режим записи, позволяющий оптимально контролировать CD. -raw96p Выбирает режим записи с секторами по 2352 байта плюс 96 байтов данных низкоуровневого подканала P-W, что в результате создает сектор размером 2448. Это наименее предпочтительный режим записи, так как его поддерживают всего несколько записывающих устройств, некоторые из них имеют ошибки во встроенном микропрограммном обеспечении. -rawl6 Выбирает режим записи с секторами по 2352 байта плюс 16 байтов данных низкоуровневого подканала P-Q, что в результате создает сектор размером 2368. Это предпочтительный режим записи, если записывающее устройство не поддерживает -raw96r. He применяйте этот режим, если ваше записывающее устройство поддерживает -raw96r. -multi Разрешает создавать многосессионный, или многосеансовый, компакт- диск. Этот флаг должен присутствовать на всех сеансах кроме последнего. Фиксация должна быть сделана таким образом, чтобы разрешить записывающему устройству в дальнейшем добавлять содержимое последующих сеансов. Это достигается за счет генерации ТОС с указанием следующей программной области. Но такой носитель не является 100% совместимым с производимым за исключением CDplus. Рели присутствует эта опция, то по умолчанию тип дорожки рассматривается как CD-ROM XA mode 2. Скажем, устройства Sony не поддерживают такой режим. Чтобы создавать многоссансовые компакт-диски на таких записывающих устройствах, придется указать опцию -data. А иосколмл cdrecord не имеет кодировщика для преобразования информационных секторов в аудиоссктора, придется заказать такую осооенность и\ гем
II. Команды 87 -msinfo -toe -fix -nofix -waiti -eject speed=# b\ank=type включения опции -data, если вам нравится осуществлять запись много- сессионного диска в режиме SAO. Следует помнить, что не все записывающие устройства поддерживают такую возможность. Извлекает многосессионную информацию в форму, пригодную для программы nikisofs-1.10 или более нового формата. Эта опция имеет смысл лишь для CD, что имеет, по крайней мере, один закрытый сеанс, но окончательно еще не закрыт (не сформирован до конца). Извлекает и распечатывает таблицу ТОС или РМА компакт-диска. Эта опция работает с устройствами CD-R и CD-ROM. Только фиксирует диск. Что может быть использовано в том случае, если диск был перезаписан, но по каким-то причинам не фиксирован для записи ТОС. Не фиксирует диск после записи дорожек (не записывает ТОС). Эта опция может быть использована при пошаговом создании аудиодиска. Ждет, чтобы входная информация стала доступной через стандартный ввод, прежде чем пытается открыть драйвер SCSI. При записи информации последующего сеанса на многосеансовый диск программа nikisofs перед записью вывода должна прочесть с устройства информацию старого сеанса, что невозможно осуществить, если cdrecord в это же время открывает драйвер SCSI. Выталкивает диск из устройства после выполненной работы. На некоторых устройствах (например, Philips) перед созданием нового диска необходимо выполнить такую операцию: если вы захотите выполнить предварительное тестирование с помощью опции -dummy и сразу же создать реальный диск, то без -eject это не сработает на подобных устройствах. Устанавливает коэффициент скорости процесса записи в значение # (целое положительное), предоставляя число, кратное данной аудиоскоро- сти, составляющей 150 Кбайт/с для CD-ROM и 172 Кбайт/с для CD- Audio. Если данная опция не задана, пытается извлечь рассматриваемое значение из переменной окружения, CDRSPEED. Если при speed=2 или speed=4 с вашим устройством возникают проблемы, следует попробовать speed=0. Очищает CD-RW и завершает работу или очищает CD-RW перед записью. Тип очистки может быть одним из следующих: help выводит список возможных типов all очищает весь диск (длительная операция) fast выполняет минимальную очистку (РМЛ, ТОС и предварительного межблочного промежутка) track очищает некоторую дорожку unreserve не ограничивает зарезервированную дорожку trtail очищает "хвост" дорожки
88 li Команды unclose открывает последний сеанс session очищает информацию последнего сеанса Далеко не на всех устройствах поддерживаются все типы очистки. Если эту опцию применять с флагом -force, можно очистить диски CD-RW, которые в противном случае не могли бы быть очищены. Указывает номер записывающего устройства CD в локальном формате SCSIBUS/Device/LUN. Можно указать даже дистанционное устройство, если перед локальным форматом добавить следующий префикс: KEtAOTE:user@host: или REMOTE:/ms<:. Если адресуемое устройство фактически является одним из устройств SCSI, допускается сокращение в виде de\=device-name:@ (здесь device-name - имя устройства). В системах FreeBSD без поддержки САМ необходимо использовать управляющее устройство /dev/rcdO.ctl, а спецификация в этом случае будет выглядеть как dev=/dev/rcd0.ctl:@. Но в Linux устройства, подключенные к адаптеру параллельного порта, отображаются на виртуальную шину SCSI (в разные посадочные места в зависимости от адаптера). Если опция dev отсутствует, программа cdrecord пытается получить информацию из переменной окружения под названием CDRDEVICE. Если аргумент к опции dev не содержит запятых, наклонных черт, двоеточий или символов @, он интерпретируется как метка из файла конфигурации по имени /ctc/cdrecord.conf. gracetime=# Устанавливает отсрочку в секундах перед началом записи. Запрещены значения менее 2 секунд. timeout=# Устанавливает для команды SCSI принятый по умолчанию таймаут в секундах. -checkdrive Проверяет, присутствует ли драйвер текущего устройства, а затем завершает программу. Если драйвер присутствует, устанавливает код возврата в ноль. -inq Выполняет запрос информации по данному драйверу и печатает ее. -scanbus Получает информацию для использования CD-устройства под шиной SCSI в качестве эмуляции. Эта опция позволяет найти в системе SCSI- адрес записывающего устройства CD. -overbum Позволяет программе cdrecord записать больше, чем предусматривает официальный размер носителя. Эта особенность, называемая overburning, возможна потому, что емкость большинства пустых носителей превосходит их официальный размер. Для большинства носителей эта особенность возможна лишь в режиме SAO или RAW, если вообще она поддерживается для вашего устройства. Далее предлагаются опции, имеющие отношение к дорожкам. Эти опции перемежаются с именами файлов дорожек.
II. Команды 39 Основные on ии орожки \src-ISRC_numbcr Устанавливает номер следующей дорожки в значение ISRCnumber согласно ISR. index=/isf Устанавливает список индексов для следующей дорожки. В список входят числа, разделенные запятыми, первое из которых равно 0. Сектор в формате CD-DA содержит данные, обеспечивающие воспроизведение музыки в течение 1/75 секунды. Поэтому числа в возрастающем порядке выражаются в 1/75 секунды и просчитываются от индекса 1. Скажем, список 0, 3750, 7500 привязывает индекс 1 к началу данной дорожки, индекс 2 - к 50 секундам, прошедшим от начала этой дорожки, индекс 3 - к 100 секундам от начала этой дорожки. -audio Записывает все последующие дорожки в формате CD-DA. Файл с такими дорожками данных записывается в стереофоническом 16-битном цифровом аудио-формате и воспроизводит 44100 сэмплов (образцов, или звуковых фрагментов) в секунду. Порядок следования байтов следующий: MSB левый, LSB левый, MSB правый, LSB правый, MSB левый и т.д. Размер дорожки такого формата кратен 2352 байтам. Если ни опция -data, ни опция -audio не задана, программа cdrecord по умолчанию предполагает формат данных -audio для всех файлов, имена которых содержат расширение .аи или .wav, и формат -data для всех остальных файлов. -swab Подразумевает порядок следования байтов аудиоданных как little-endian (начиная с младшего). Хотя некоторые типы записывающих CD требуют представления аудиоданных в формате big-endian (начиная со старшего), используемом протоколом SCSI. Программа cdrecord знает, в каком формате нуждается устройство, и при необходимости корректирует порядок следования байтов в потоке данных. Так что этот флаг нужен лишь в том случае, если ваш поток данных в формате Intel (little- endian). -data Записывает все последующие дорожки в формате CD-ROM mode 1 (согласно Yellow Book). Размер дорожки такого формата кратен 2048 байтам. Дорожки с данными в таком файле содержат образ файловой системы в формате ISO-9660 или Rock Ridge (см. команду nikisofs). По умолчанию принимается опция -data, если никакой другой флаг не задан. Если ни опция -data, ни опция -audio не задана, программа cdrecord по умолчанию предполагает формат данных -audio для всех файлов, имена которых содержат расширение .аи или .wav, и формат -data для всех остальных файлов. -mode2 Записывает все последующие дорожки в формате CD-ROM mode 2. Размер дорожки такого формата кратен 2048 байтам. _ха1 Записывает все последующие дорожки в формате CD-ROM \A mode 1. Размер дорожки такого формата кратен 2048 байтам. См. описание CD-ROM XA в приложении VI.
90 II Команды -ха2 -cdi -nopad -copy -nocopy Записывает все последующие дорожки в формате CD-ROM XA mode 2 Размер дорожки такого формата кратен 2048 байтам. См. описание CD-ROM XA в приложении VI. Записывает все последующие дорожки в формате CDI. Размер дорожки такого формата кратен 2048 байтам. См. описание CDI в приложении VI. В случае, если данная дорожка является дорожкой данных, добавляет в конце нее и каждой последующей дорожки данных 15 обнуленных секторов. Если эта опция прилагается к аудиодорожке, дополняет аудиоданные двоичными нулями (эквивалентно абсолютному молчанию) до размера, кратного 2352 байтам. Не дополняет содержимого следующих дорожек. Эта опция принята по умолчанию. Все элементы ТОС для последующих аудиодорожек результирующего CD будут указывать, что аудиоданные могут копироваться без каких- либо ограничений. Эта опция не воздействует на дорожки данных. Все элементы ТОС для последующих аудиодорожек результирующего CD будут указывать, что аудиоданные в соответствии с полномочиями могут копироваться только единожды для личного использования. Эта опция принята по умолчанию. Все элементы ТОС для последующих аудиодорожек результирующего CD будут указывать, что аудиоданные вообще не могут быть скопированы. Примеры Прежде всего нужно получить информацию для правильного использования устройства CD при эмуляции SCSI: # cdrecord -scanbus Cdrecord l.lla32 (i586-mandrake-linux-gnu) Copyright (С) 1995-2002 Jqrg Schilling Using libscg version 'schily-0.6' scsibusO: 0,3,0 0,0,0 0) * 0,1,0 0) * 0,2,0 0) * 0) 'HL-DT-ST' ■RW/DVD GCC-4120B' '2,00* Removable CD- Зная адрес устройства (dev=0,3,0), можно попробовать в тестовом режиме (опция -dummy) произвести запись файла-образа probaim. подготовленного ранее с помощью mkisofs: # cdrecord -v -dummy blank=fast dev=0,3,0 probaim Cdrecord l.lla32 (i586-mandrake-linux-gnu) Copyright (C) 1995-2002 jBrg Schilling TOC Type: 1 - CD-ROH
II. Команды 91 Using libscg version 'schily-0.6' atapi: 1 Device type : Removable CD-ROM Version : 0 Response Format: 1 Vendor_info : 'HL-DT-ST* Identifikation : 'RW/DVD GCC-4120B' Revision : '2.00' Device seems to be: Generic mmc2 DVD-ROM. Using generic SCSI-3/mmc CD-R driver (mmc_cdr). Driver flags : SWABAUDIO BURNFREE Supported modes: TAO PACKET SAO SAO/R96P SAO/R96R RAW/R16 RAW/R96P RAH/ R96R Drive buf size : 1605632 = 1568 KB FIFO size : 4194304 = 4096 KB Track 01: data 1 MB Total size: 2 MB (00:12.18) = 914 sectors Lout start: 2 MB (00:14/14) = 914 sectors Current Secsize: 2048 ATIP info from disk: Indicated writing power: 3 Reference speed: 6 Is not unrestricted Is erasable Disk sub type: High speed Rewritable (CAV) media (1) ATIP start of lead in: -11635 (97:26/65) ATIP start of lead out: 110100 (24:30/00) speed low: 4 speed high: 8 power mult factor: 1 5 recommended erase/write power: 3 A2 values: 26 B2 26 Disk type: phase change Manuf. index: 3 Manufacturer: CMC Magnetics Corporation Blocks total: 110100 Blocks current: 110100 Blocks remaining: 109186 Starting to write CD/DVD at speed 8 in dummy TAO mode for single session. Last chance to quit, starting dummy write in 9 seconds. 8 seconds. 7 seconds. 6 seconds. 5 seconds. 4 seconds. 3 seconds, seconds.1 econds.O seconds, operation starts. Waiting for reader process to fill input buffer ... input buffer ready. Blanking PMA, TOC, pregap Blanking time: 20.411s BURN-Free is OFF. Starting new track at sector: 0 Track 01: 0 of 1 MB written. Track 01: 1 of 1 MB written (fifo 100%) [buf 78%) 11.6x. Track 01: Total bytes read/written: 1867776/1867776 (912 sectors). Writing time: 2.340s Fixating... WARNING: Some drives don't like fixation in dummy mode. Fixating time: 0.003s Average write speed 5.2x. t
92 II Команды chage - меняет информацию, связанную с паролем пользователя. Синтаксис chage [-ш nindays][-H maxdays]l-d lastday]l-I inactive][-E expiredate] [-И warndays] user chage -1 user Команда chage меняет информацию, связанную со сроком изменения пароля пользователя user, число дней между изменениями пароля и дату последнего изменения пароля. Эта команда главным образом предназначена для суперпользователя. Опции -m mindays Устанавливает минимальное число дней между изменениями пароля. -М maxdays Устанавливает максимальное число дней, в течение которых пароль действителен. -d lastday Указывает день, когда пароль последний раз менялся. Значение дня задается как число дней после 1 января 1970 года. -Е expiredate Указывает дату, когда пользовательский счет будет уже недоступным. -I inactive Устанавливает число дней бездеятельности после того, как срок действия пароля уже истек, но прежде, чем счет будет заблокирован. -1 Позволяет непривилегированному пользователю указать, когда срок действия его пароля или счета должен истечь. -W warndays Устанавливает число дней, за которое до изменения пароля начинает выдаваться предупреждение о грядущем изменении. Пример $ chage -1 misha Minimum: 0 Maximum: 99999 Warning: 7 Inactive: -1 Last Change: Sep 01, 2001 Password Expires: Never Password Inactive: Never Account Expires: Never $ chat автоматизирует взаимодействие компьютера с модемом. Синтаксис chat [option] script
II. Команды 93 Основная задача программы chat - установить соединение между локальным демоном протокола РРР и процессом pppd на дистанционной машине. Оп ии -f chat_file Чишет сценарий из файла chutjile. Сценарий этой программы состоит из различных символьных строк, которые могут быть пересланы дистанционным узлом, и соответствующих строк, которые должен отослать в ответ локальный узел. Эти строки делятся на два вида: expect (запрос) и send (ответ на этот запрос). Чтобы разделить строки, применяются пробелы и символы горизонтальной табуляции. -t timeout Устанавливает тайм-аут в ожидании строки запроса. Если в течение этого периода никакая строка не получена, может быть послан альтернативный ответ или сценарий завершается аварийно, что также вызывает аварийное завершение программы chat (с ненулевым кодом). -г report Jile Устанавливает выходной файл report Jile для вывода строк отчета. Если используется ключевое слово REPORT, результирующие строки записываются в этот файл. Если эта опция отсутствует, но используется ключевое слово REPORT, для накопления результирующих строк применяется stderr — стандартный файл ошибок. -е Включает опцию echo, выводящую текст на стандартный вывод (обычно на экран). Включение или отключение этой опции можно осуществлять в определенных с помощью ключевого слова ECHO местах сценария. -Е Делает возможной подстановку переменных окружения внутри сценариев chat, используя стандартный синтаксис $ххх. -v Требует, чтобы в процессе выполнения сценария chat производилось комментирование в расширенном режиме. Программа chat зарегистрирует в журнале текст получаемых от модема и направляемых ему строк. По умолчанию журнал определяется переменной SYSLOG. Регистрация в журнале может быть отменена с помощью флагов -S и -s. -S Не использует переменную SYSLOG. -V Эта опция подобна опции -v с той только разницей, что результаты выводятся на stderr - обычно это локальная консоль на узле, запустившем chat или pppd. -s Использует stderr. Все сообщения, создаваемые с помощью опции -v, а также все сообщения об ошибках, будут отсылаться на stderr. -Т phone number Передает строку, содержащую телефонный номер и используемую в качестве подстановки для метасимвола \Т в строке send. -U phone_number_2 Передает вторую строку, содержащую телефонный номер и используемую в качестве подстановки для метасимвола \1). Это полезно, когда дозвон осуществляется через терминальный адаптер ISDN, i рсбующнй два номера.
94 И Команды Если сценарий не задается с помощью опции -f, тогда благодаря аргументу script он включается в параметры программы chat. Сценарий программы chat состоит из одной или более пар строк "запрос-ответ", разделенных пробелами, и, возможно, в свою очередь одна из строк вновь может включать дополнительную пару строк "запрос-ответ", разделенных символом дефиса. Это может выглядеть следующим образом: ogin: -Break-ogin: pppl ssword: entl2345 Программа chat ожидает в течение предусмотренного времени строку приглашения ogin:. В противном случае на дистанционную машину направляется последовательность Break, создающая прерывание, и вновь chat ожидает строку ogin:. Если первая строка ogin: получена своевременно, прерывание не создается. Получив строку ogin:, программа chat отсылает строку pppl и вновь ожидает приглашения в виде строки ssword:. Получив ожидаемую строку, отправляет в ответ пароль - entl234S. Строки ogin: и ssword: в действительности соответствуют строкам login: и password:. Такой прием позволяет обеспечить гарантированную передачу строк по сети даже в случае потери начального символа. В сценарии могут присутствовать комментарии, начинающиеся с символа # в первой позиции строки. Программа chat игнорирует такие строки. Если присланная строка начинается с символа @, то содержимое строки, идущее за этим символом, будет рассматриваться как имя файла, из которого следует прочесть ответную строку. Этот файл может быть как обычным файлом, так и именованным каналом (FIFO). Таким способом программа chat может связаться с другой программой. Многие модемы получают информацию о состоянии вызова также в виде строки. Могут быть получены такие строки: CONNECT (соединение), BUSY (занято), NO CARRIER (абонент отсутствует). Существует специальная последовательность ABORT, используемая для задания вариантов аварийного подключения: ABORT BUSY ABORT 'NO CARRIER " ATZ OK ATDT7835442 CONNECT " ogin: conn assword: TiTigam. В этом примере две последовательности ABORT задают варианты аварийного подключения. По умолчанию первая строка должна являться строкой запроса, однако модем не возвратит никаких сообщений до тех пор, пока не будет отдана какая-либо модемная команда. Именно поэтому далее следует пустая строка ", вслед за которой будет выдана команда инициализации модема - ATZ. Если получен ответ ОК, модему будет передана команда набора номера - ATDT7835442. В ответ ожидается прием сообщения CONNECT, гарантирующего установление соединения. Далее вновь идет пустая строка, так как в ответ на сообщение CONNECT не следует отправлять новых команд. Теперь программа chat ждет поступления приглашения ogin:. Дальнейшая часть сценария аналогична вышеописанной. - меняет атрибуты файла второй расширенной файловой системы Linux. Синтаксис chattr -RV [+-=usacdiSu][-v version] file
II. Команды 95 Эта команда позволяет сделать заданные файлы file недосягаемыми даже для суперпользователя. Оператор + добавляет выбранные атрибуты к уже существующим, оператор - удаляет их, а оператор = устанавливает только атрибуты, которые файл имеет. Случается, что пользователь забыл про выполненную установку атрибутов с помощью команды chattr и не может модифицировать или удалить файл, хотя, казалось бы, существующие полномочия на этот файл позволяют выполнять подобные манипуляции. Дело в том, что установленные атрибуты невозможно увидеть с помощью даже такой "вездесущей" команды, как Is. Для этого следует применять lsattr. Опции -R Рекурсивно меняет атрибуты каталогов и их содержимого. -V Подробно информирует о происходящем и печатает версию программы, -v version Устанавливает версию файловой системы. Атрибуты А Не обновляет atime (время доступа к файлу). S Модифицируя файл с таким атрибутом, синхронно записывает на диск внесенные изменения. а Позволяет лишь добавлять записи в файл. Только суперпользователь может установить или убрать такой атрибут. с Записывает в файл упакованную (сжатую) информацию перед сохранением его на диске. Операция чтения такого файла возвращает распакованные данные. d He разрешает выполнять копию файла, когда запущена программа dump. i Делает файл с таким атрибутом полностью недосягаемым: он не может быть удален или переименован, никакие ссылки не могут быть созданы на этот файл, никакие данные не могут быть записаны в него. Только суперпользователь может установить или убрать такой атрибут. s При удалении такого файла выполняет обнуление его блоков и записывает обратно на диск. и При удалении файла с таким атрибутом сохраняет его содержимое, что создает возможность последующего восстановления такого файла. chfn - н т информа 1ию о пользователе. Синтаксис chfn [-t full-name]l-o office][-p office-phone][-h home-phone]{-u] l-v][username] Меняет информацию (стандартные записи) о пользователе, возможно, ранее полученную по сети с помощью команды finger.
96 II Команды On ии -f full-name Указывает полное имя пользователя, -о office Задает офис (номер комнаты) пользователя, -р office-phone Задает номер рабочего телефона, -h home-phone Задает номер домашнего телефона. -u, —help Выводит краткое описание опций и завершает работу- программы, -v, —version Выводит краткую информацию о версии программы и завершает ее работу-. ip мер В интерактивном режиме поменяем информацию о пользователе misha. Если есть желание оставить некоторые поля без изменения, следует нажать Enter. t chfn misha Changing finger information for misha. Name [michael]: Office Ц: 321100 Qffice Phone []: 656613 Home Phone []: 681623 Finger information changed. CflCjrp - переназначает групп i m «айлов и каталогов. К. Синтаксис chgrp [option] group file... chgrp [option]——reference=r/ile file... Производит смену группы, которой принадлежит файл (или каталог) file, на group. В файле /etc/group хранится полный список групп. Группу может поменять владелец файла или суперпользователь. В качестве значения group можно задать имя группы или ее GID. Опц -с, —changes Выдает подробные сообщения по выполненным изменениям. —dereference He воздействует на символическую ссылку, а воздействует на то, на что она указывает. -h, —no-dereference Воздействует именно на символические ссылки вместо собственно того, на что они указывают; опция доступна в системах, где можно менять владельца символической ссылки. -f, —silent, —quiet Подавляет большинство сообщений об ошибках.
II. Команды 97 итого 4 drwxr-xr-x -rw-rw-r— -rw-rw-r— -rw-rw-r— 5 1 1 1 misha mis ha misha misha misha misha misha misha —reference=r///e Использует группу, к которой принадлежит файл фк, вместо значения group. -R, —recursive Устанавливает рекурсивный режим: меняется группа, к которой принадлежит заданный каталог, его подкаталоги и файлы подкаталогов и т.д., и т.п. -v, —verbose Выводит подробную диагностику для каждого обрабатываемого файла. —help Выводит краткое описание опций и завершает работу программы. —version Выводит краткую информацию о версии программы и завершает ее работу. Пример Содержимое каталога /home/misha выглядело следующим образом: 1024 Apr 28 23:18 Desktop 12 Apr 29 13:25 mishal 20 Apr 29 13:33 misha2 195 Apr 29 13:29 priml8 Требуется, чтобы файл misha2 принадлежал к той же группе, к которой принадлежит файл /home/sofla/soflal: t chgrp —reference=/home/sofia/sofial /home/misha/misha2 i Содержимое каталога/home/misha несколько изменилось (см. четвертый столбец): 1024 Apr 28 23:18 Desktop 12 Apr 29 13:25 mishal 20 Apr 29 13:33 misha2 195 Apr 29 13:29 priml8 ChkCOflf JCj - управляет запуском системных служб и устанавливает уровень их « нкциони^ования Синтаксис chkconfig —list [паше] chkconfig —add паше chkconfig —del паше chkconfig [—level levels] паше (on|off|reset] chkconfig I—level levels] паше Команда chkconfig предоставляет интерфейс командной строки к сценариям системных служб, перечисленных в /etc/rc.d/init.d. Необходимость выполнить определенную последовательность команд часто связана с задачами системного администрирования. итого 4 drwxr-xr-x -rw-rw-r— -rw-rw-r— -rw-rw-r— 5 1 1 1 misha misha misha misha misha misha sofia misha
98 II Команды Опции —level levels Указывает, к каким уровня относится задаваемая операция. Параметр levels задается в виде строки чисел от 0 до 6. Скажем, строка 35 подразумевает уровни выполнения 3 и 5. —add name Добавляет новую службу под управление chkconfig. —del name Удаляет указанную службу из-под эгиды chkconfig, а также все символические ссылки, имеющие отношение к этой службе, из файлов /etc/rc|0-6].d. —list name Перечисляет все известные команде chkconfig службы, а также на каком уровне они останавливаются или стартуют. Если указан параметр пате, отображает информацию лишь по заданной службе. Один из трех флагов - on, off, reset - задается после имени службы. Первые два из этих флагов вынуждают службу запускаться или останавливаться в измененных уровнях выполнения, а вот третий флаг переустанавливает информацию по данной службе в значения, указываемые в сценарии init. По умолчанию флаги on и off воздействуют только на уровни 2, 3,4 и 5, а вот reset - на все уровни. Примеры Вот так можно получить информацию о службе xinetd (русская версия Red Hat Linux 9): # chkconfig —list | grep xinetd xinetd 0:выкл 1:выкл 2:выкл З:вкл 4:вкл 5:вкл 6:выкл сервисы иа основе xinetd: I Пусть требуется во время загрузки системы автоматически стартовать службу httpd (Web-сервер Apache) в третьем уровне функционирования: # chkconfig —level 3 httpd on « Проверим назначенные установки: # chkconfig —list | grep httpd httpd 0:ввкл 1:ввкл 2:выкп 3:вкл 4:вшш 5:ввкл 6:выкл chkfontpath - упрощенный интерфейс для добавления, удаления и просмотра каталогов со шрифтами по маршруту сервера шрифтов системы X. Синтаксис chkfontpath [—add dir] [—remove dir][—first]!—list][—help] Утилита chkfontpath обеспечивает конфигурирование каталогов, содержащихся по маршруту сервера шрифтов. Управление всеми шрифтами в X осуществляется с помощью отдельных процессов сервера шрифтов, а не с помощью процесса главного
II. Команды 99 сервера X. Упомянутая реализация позволяет ускорить воспроизведение шрифта и дает возможность использовать серверы шрифтов, запущенные не на локальном узле. chkfontpath главным образом используется RPM для добавления и удаления каталогов из конфигурационного файла во время инсталляции и деинсталляции пакетов, содержащих шрифты. Опции —add dir Позволяет добавлять каталог dir по маршруту сервера шрифтов. —remove dir Позволяет удалить каталог dir по маршруту сервера шрифтов. —first Добавляет задаваемый каталог dir первым по маршруту сервера шрифтов. —list Запрашивает перечень текущих каталогов, расположенных по маршруту сервера шрифтов. Эта возможность включена по умолчанию, если не заданы вообще никакие опции. —help Выводит краткую информацию об опциях программы и завершает ее работу. При добавлении каталогов производится проверка на наличие в каждом из них файла fonts.dir, где хранятся описания шрифтов. Если операция по добавлению или удалению каталогов прошла успешно (chkfontpath возвращает в этом случае нулевой код завершения), будет перезапущен ранее запущенный процесс сервера шрифтов. СПmOCI - меняет ■• омочия на «айлы и каталоги. К. Синтаксис chmod [option].. .model #Jnode] —file,.. chmod [option]. - .octal_mode file... chmod [option]... —ref erence=rfHe file... chmod меняет полномочия согласно заданному режиму доступа, который указывается в одном из двух форматов: символьном (mode) или числовом (octaljnode). Числовой формат использует восьмеричное число и предназначен для абсолютного задания режима доступа. Символьный формат - это одна или несколько групп символов, разделенных запятыми, используется для изменения режима относительно текущего состояния полномочий на файл или каталог. Менять полномочия на файл или каталог может владелец или суперпользователь. Увидеть полномочия на файл и каталог можно с помощью команды Is (см. крайний левый столбец листинга). Строка полномочий на файл состоит из трех частей: полномочия владельца, группы и всех остальных пользователей. В каждой части устанавливаются полномочия на чтение (г), запись (w), выполнение (х). Знак минус означает, что соответствующие полномочия отсутствуют. Символьный формат выглядит следующим образом: [ugoa... ] [[+-=) [rwxXBtugol...)[,...)
100 И Команды Символьные операции разделяются запятыми. Комбинация букв ugoa соответствует полномочиям владельца (и), группы (g), всех остальных пользователей, не входящих в группу (о), или всех пользователей (а). Знак плюс добавляет к уже существующим выбранные полномочия, знак минус удаляет указанные полномочия. С помощью знака равенства можно назначить новые полномочия. Рассмотрим два дополнительных бита полномочий - SUID (Set User ID - установить идентификатор пользователя) и SGID (Set Group ID - установить идентификатор группы). Буква s будет выставлена вместо буквы х в соответствующей владельцу или группе позиции строки полномочий. Обычно владельцем исполняющейся программы является именно тот пользователь, который запустил ее на выполнение. Но если включен SUID, то владельцем программы станет владелец исполняемого файла. Значит, если обычный пользователь запустил исполняемый файл, владельцем которого является администратор системы, то эта программа обладает полномочиями администратора на свои файлы, невзирая на ограниченность прав рядового пользователя. Аналогичные рассуждения распространяются и на SGID, включение которого дает программе все права группы, владеющей исполняемым файлом. Если на выполнение файла уже существуют полномочия для какого-нибудь пользователя, будет выставлена буква X. Бит сохранения задачи (sticky bit) указывает системе на необходимость сохранения копии выполняющейся программы. Включение этого бита (буква t в последней позиции строки полномочий) указывает системе на необходимость сохранения копии программы в памяти (области своппинга) даже после ее завершения. При частом использовании программы экономится время системы на загрузку исполняемого файла при каждом новом запуске. Восьмеричное значение числового формата полномочий получается при сложении значений, которые перечислены ниже: 400 владелец имеет полномочия на чтение 200 владелец имеет полномочия на запись 100 владелец имеет полномочия на выполнение файла 040 члены группы, которой принадлежит файл, имеют полномочия на его чтение 020 члены группы, которой принадлежит файл, имеют полномочия на запись 010 члены группы, которой принадлежит файл, имеют полномочия на выполнение файла 004 все остальные пользователи помимо членов группы, которой принадлежит файл, имеют полномочия на его чтение 002 все остальные пользователи помимо членов группы, которой принадлежит файл, имеют полномочия на запись (модификацию файла) 001 все остальные пользователи имеют полномочия на выполнение файла Опции -с, —changes Выдает подробные сообщения по выполненным изменениям, -f, —silent, —quiet Подапляет большинство сообщений об ошибках.
II. Команды 101 —reference=r/j/e Использует полномочия на файл rfile вместо значения mode. -R, —recursive Устанавливае! рекурсивный режим: изменяет полномочия на доступ к каталогу и всем содержащимся в нем файлам и подкаталогам, а также файлам и подкаталогам упомянутого подкаталога и т.д. -v, —verbose Выдает подробную диагностику по каждому обработанному файлу. —help Выводит краткое описание опций и завершает работу программы. —version Выводит информацию о версии программы и завершает ее работу. Примеры Распечатаем оглавление каталога /home/misha: $ Is -1 итого 4 drwxr-xr-x -rw-rw-r— -rw-rw-r— -rw-rw-r— § 5 1 1 1 misha mis ha misha misha misha misha sofia misha 1024 Apr 28 23:18 Desktop 12 Apr 29 13:25 mishal 20 Apr 29 13:33 misha2 195 Apr 29 13:29 priml8 Оставим владельцу файла mishal лишь полномочия на его выполнение: $ chmod 100 mishal Вновь распечатаем оглавление каталога /home/misha: $ 1в -1 итого 4 drwxr-xr-x X -rw-rw-r— -rw-rw-r— 5 misha misha 1024 Apr 28 23:18 Desktop 1 misha misha 12 Apr 29 13:25 mishal 1 Sofia Sofia 20 Apr 29 13:33 misha2 1 misha misha 195 Apr 29 13:29 priml8 А теперь добавим владельцу и группе, которой принадлежит файл mishal, полномочия на его чтение и запись (модернизацию): 5 chmod u+rf u+wr g+r, g+w mishal S И еще раз распечатаем оглавление каталога /home/misha: $ Is -1 ИТОГО 4 drwxr-xr-x -rwxrw -rw-rw-r— -rw-rw-r— $ 5 1 1 1 misha misha sofia misha misha misha sofia misha 1024 Apr 28 23:18 Desktop 12 Apr 29 13:25 mishal 20 Apr 29 13:33 mi вha2 195 Apr 29 13:29 priml8
102 И Команды cnown меняет владельца файла или каталога, а также группу, к которой он принадлежит. и chown [option]...owner!: [group]] file... chown [option]... igroup file... chown [option]...—reference=rfile file— Аргумент owner- это имя владельца или его UID (идентификатор), соответственно group - имя группы или ее GID. Если задан только аргумент owner, то пользователь, им определяемый, становится владельцем файла. Если за owner через точку или символ двоеточия (без пробела) следует group, то меняется как владелец файла, так и группа, к которой файл принадлежит. Если за owner следует точка или двоеточие, но аргумент group отсутствует, то меняется владелец файла и устанавливается группа этого владельца, определенная при его регистрации в системе. Если аргумент owner отсутствует, но имеется точка или двоеточие, а также group, то этом случае производится смена группы, к которой принадлежит файл, подобно тому, как это осуществляется с помощью команды chgrp. Опции -с, —changes Выдает подробные сообщения по выполненным изменениям, —dereference Учитывает при обработке не саму символическую ссылку, а то, на что она ссылается, -h, —no-dereference Учитывает при обработке именно символическую ссылку (эта опция доступна в системах, где можно менять владельца и для символьной ссылки). —from=o Id-owner Меняет принадлежность файла лишь в том случае, если его текущие атрибуты соответствуют old-owner (владелец и/или группа без пробелов между ними). -f, —silent, —quiet Подавляет большинство сообщений об ошибках. —reference=r/i/e Использует владельца файла rple и группу, к которой он принадлежит, вместо того, чтобы явно определять эти аргументы через значения owner и group. -R, —recursive Устанавливает рекурсивный режим: меняется владелец и группа, к которой принадлежит заданный каталог, его иодкагалош и файлы, а также подкаталоги и файлы подкаталогов и т.д., и т.п. -v, --verbose Подробно сообщает, что было проделано. —help Выводи г крат кое описание опций и завсршас г работу программы.
II. Команды 103 —version Выводит информацию о версии программы и завершает ее работу. Владелец и группа, к которой принадлежит файл или каталог, не меняются, если они не заданы. Но если присутствует точка или двоеточие, то устанавливается группа, к которой принадлежал при регистрации пользователь, выдавший команду. Пример Меняем владельца файла: # chown -с Sofia /home/misha/misha2 Владелец /home/misha/misha2 нзыенен на Sofia I СПГООТ запускает программу или интерактивную обо- ш\ лочку, определив нестандартный корневой каталог системы. Синтаксис chroot newroot [command[args] ] chroot option Запустить такую команду может только суперпользователь. Обычно поиск имен файлов начинается с корневого каталога системы, обозначаемого /. Команда chroot меняет стандартный корневой каталог на каталог newroot, последний обязательно должен существовать, а затем запускает команду command с необязательными аргументами args. Если команда не определена, запускается оболочка, задаваемая в переменной окружения SHELL. Если переменная SHELL не определена, будет вызвана оболочка /bin/sh с опцией -i. Опции —help Выводит краткое описание опций и завершает работу программы, --version Выводит краткую информацию о версии программы и завершает ее работу. chsh яет оболочк или командный процессор. Синта chsh [-E snell][-ll[-u][-v][username] Команда chsh меняет вашу оболочку регистрации или приглашает назвать таковую, если она не указана в командной строке. Непривилегированные пользователи могут только выбрать оболочку из перечисленных в файле /etc/shells, а суперпользователь может указать любую оболочку или выбрать из списка доступных оболочек. Опции -s, —shell Указывает новую оболочку для пользователя username.
104 II Команды -I, —list-shells Перечисляет оболочки, инсталлированные в системе (из /ttc/ihelh), и завершает chsh. -u, —help Печатает сообщение об использовании и завершает chsh. -v, —version Печатает информацию о версии и завершает chsh. Примеры В первом примере оболочка регистрации меняется лишь для текущего сеанса: $ exec /bin/csh S Во втором примере оболочка регистрации меняется на постоянной основе: ш Terminal '-Jinx File Edit Settings Help [nisha&ofia "]$ chsh -s /bin/csh Changing shell for misha. Password: Shell changed, [misha&ofia "]$ I Л CI - обновляет RCS- айл со • вая новые версии. Синтаксис ci [option] file... RCS (Revision Control System - система управления версиями) позволяет управлять разработкой программы. В процессе внесения изменений в программу с помошью RCS можно создавать и выбирать нужную версию и получать информацию о ходе разработки. Это инструментальное средство предназначено для управления процессом разработки коллективных проектов. Позволяет восстановить любую предшествующую версию файла. Команда rcsintro знакомит с командами системы RCS. Команда со позволяет получить нужную версию RCS-файла, новые версии которого можно получить с помощью ci. Команда res управляет RCS-файлами и контролирует доступ других пользователей к RCS-файлу. Сводку по каждой версии позволяет получить rlog, а удаляет файлы - rcsclean. Объединять результаты работы двух или более сотрудников в одном файле можно с помощью rcsmerge, а сравнивает версии RCS-файла команда resdiff. Содержимое RCS-файлов подвергается обработке с помощью rcsfilc и icient. Если RCS-файл не существует, ci создаст его с расширением ,v в качестве начальной персик (по \ молчанию номер версии 1.1). Команда ci обычно применяется для сохранения отредактированной версии файла, предварительно найденного с помощью со. Сохранение от ре »ак- i ированной копии обычно приводит к созданию новой версии файла. I luimna'iii шр\ еюя список доступа (вначале пустой). Вместо сообщения для журнала log komjii %\ ci члпра- шиваегтекст описания. Номер версии rev может быть числовым, символьным или сме-
II. Команды 105 тайного типа. Гаким образом, ci сохраняет содержимое обычною файла в архивном файле, называемом RCS-файл. Любой RCS-фаГш хранит все версии обычног о файча. Опции -rrev Устанавливает номер, с которого начнется создание исходной новой версии. -г "Пустая" опция -г (без версии) переустанавливает заданные по умолчанию возможности блокировки и удаления рабочего файла и используется, чтобы перекрыть любую из задаваемых по умолчанию опций -I и -и. -l[rev] Работает подобно опции -г, но дополнительно выполняет в отношении сданной на хранение версии действия, подобные действиям команды со -1. Таким образом, сданная на хранение версия немедленно вновь проверяется и блокируется. Это может оказаться полезным для сохранения версии, хотя вполне может найтись пользователь, желающий продолжить после проверки ее редактирование. -u[rev] Работает подобно опции -г, хотя сданная на хранение версия не блокируется, это позволяет любому сразу после проверки прочесть рабочий файл. Опции -I, -г и -и - взаимоисключающие и, по сути, перекрывающие друг друга. -f[rev] Отвергает ранее сданную на хранение версию. На хранение берется новая версия, даже если она ничем не отличается от предшествующей. -k[rev] Анализирует рабочий файл по ряду показателей: номер версии, дата создания, состояние, автор (см. команду со) и присваивает именно эти значения версии, сдаваемой на хранение. Также создается сообщение, регистрирующее вызов с проверкой актуальности информации. Эта опция полезна для распространения дистрибутивов программного обеспечения на ряд узлов, где версии будут проверяться в соответствии с упомянутыми оригинальными показателями. -q[rev] He распечатывает диагностические сообщения. Версия, не отличающаяся от предыдущей, на хранение не берется, если только не указывается опция -f. -i[rev] Осуществляет начальную проверку и выдает сообщение об ошибке, если RCS-файл уже существует. -j[rev] Осуществляет проверку (обычно не в начале) и выдает сообщение об ошибке, если RCS-файл еще не существует. -I[rev] Осуществляет переход в интерактивный режим работы: поль-юватеть приглашается для ответов на вопросы, даже если терминал не предназначен для стандартного ввода. -d[date] Для проверки даты и времени использует указанную дату date в свободном формате, предлагаемом командой со. Fcnii нарамеф date отел т- ствует, используется время последней модификации раоочего файла. -Mfrev] Устанавливает время модификации нового рабочего файла в соответствии с датой версии rev; для команды make 1акого рода дата может оказаться весьма существенной.
106 II Команды -mmsg Использует строку msg как сообщение регист раиии лля всех проверяемых версий. Все сообщения регистрации, начинающиеся с символа #, рассматриваются как комменгарии и игнорируются пакетами жпа vc из GNU Emacs. Хотя сообщения, начинающиеся с метки {clumpname}, за которой следует пробел, должны быть по возможности собраны вместе, даже если они связаны с другими файлами. -ппате Назначает символическое имя пате в качестве номера проверяемой версии. Команда ci печатает сообщение об ошибке, если имя пате было ранее назначено другому номеру. -Nname Подобна опции -п, но перекрывает предшес гвующее назначение имени пате. -sstate Устанавливает состояние проверяемой версии в соответствии с идентификатором state; по умолчанию устанавливается значение Ехр. -t/i/e Записываеттекст описания из содержимого файла/?/е в RCS-файл, уничтожая до этого существующий текст. Имя файла не может начинаться с дефиса. -t-string Записывает текст описания из строки string в RCS-файл, уничтожая до этого существующий текст. Опция -t в обеих формах эффективна только во время первоначальной проверки, во всех других случаях она попросту игнорируется. Во время первоначальной проверки, если опция -t не задана, ci будет пытаться вводить текст со стандартного ввода, завершая операцию по концу файла либо встретив строку с единственной точкой в начале. Если установлена опция -I, пользователь приглашается для задания текста. Для совместимости с более ранними версиями RCS "пустая" опция -t игнорируется. -Т Устанавливает время модификации RCS-файла в качестве нового времени версии. Если существует блокированная версия, команда ci обычно заменяет время модификации RCS-файла на текущее время. Дело в том, что индикатор блокирования хранится в RCS-файле, поэтому его удаление требует проведения изменения самого файла. Создать RCS- файл более новый, чем рабочий, можно двумя способами: с помощью команды ci -M создать рабочий файл с датой несколько более ранней, чем текущая, либо произвести изменения в предшествующей версии RCS-файла, не трогая рабочий файл. -wlogin Использует строку login для заполнения ноля " Autor (автор)" сохраняемой версии. -V Выдает информацию о версии RCS. -V/J Эмулирует номер версии RCS, равный и. -xsuffixes Указывает суффиксы для RCS-файлов. Непустой суффикс (Зудег сопоставлен с любым наименованием маршрута, заканчипамшпмся :ним суффиксом. Пустой суффикс будет сопоставлен с любоым маршрх том в форме RCS/palh или pathl/RCS/path2, где path, pathX и pathl млр-
И. Команды 107 шруты. С помощью опции -х можно задать список суффиксов, разделенных прямым слэшем. Если указано два или более суффиксов, при поиске RCS-файла они анализируются по порядку. Если RCS-файл не найден, но может бызь создан, будет произведена попытка применить по очереди эти суффиксы при построении имени нового файла. Обычно для Unix-образных узлов, допускающих занятую в именах файлов, применяются суффиксы типа ,v/ и пустые суффиксы для других узлов. -zzone Указывает формат вывода даты через подстановку ключевого слова, а также задает часовой пояс по умолчанию для параметра date в опции -delate. Параметр zone может быть пустым (по умолчанию), числовым смещением в формате UTC или же специальной строкой LT, определяющей локальное время. Если параметр zone пустой (по умолчанию), используется традиционный для системы RCS формат UTC без указания часового пояса и со слэшами, разделяющими части даты; в противном случае вывод даты производится в формате ISO 860I с указанием часового пояса. Опция -г не оказывает никакого воздействия на информацию, хранящуюся в RCS-файлах, которая всегда в формате UTC. Пары RCS-файлов и рабочих файлов могут быть специфицированы тремя способами: 1) Даны и RCS-файл, и рабочий файл. Тогда маршруты RCS-файла представляются в формеpathllworkfileX, рабочий файл - в patlillworkfile, где pathl/ upath2l' — маршруты, возможно разные или пустые, workfile — имя файла, X — суффикс RCS. Если суффикс X— пустой, маршрутpathl/ должен начинаться с выражения RCS/ или содержать /RCS/. 2) Дан только RCS-файл. Тогда рабочий файл создается в текущем каталоге и его имя получается из имени RCS-файла путем удаления pathl/ и суффикса X. 3) Дан только рабочий файл. Тогда ci предполагает, что каждый суффикс А"в обращении и производит поиск RCS-файла в форме path2/RCS/workfileX или pathllworkfileX. Если для вариантов 1) и 2) указан RCS-файл без маршрута, то ci вначале ищет файл в каталоге ./RCS и уж затем в текущем каталоге. RCS-файл, созданный командой ci, наследует от рабочего файла полномочия на чтение и исполнение. Если RCS-файл уже существует, ci сохраняет полномочия на чтение и исполнение. Временные файлы создаются в каталоге, содержащем рабочий файл, а также во временном каталоге (см. переменную окружения TMPDIR). Семафоры создаются в каталоге, содержащем RCS-файл. Если суффикс непустой, имена семафоров начинаются с первого символа суффикса; если суффикс пустой, имена семафоров заканчиваются символом подчеркивания. Команда ci никогда не меняет RCS-файл или рабочий файл. Обычно она просто разрывает связь (соединение между файлом и его индексным дескриптором); но если приходится отслеживать цепочку связей, ci старается разорвать связь с конечным файлом (в этой цепочке), не трогая цепочку.
108 II Команды П • игле • Подавим файл prim32 иод кингриль системы RCS, программа pel ис;рации cl запросит краткое описание файла. ш'' rnisha@localhost.localdomain:/home/misha [mishaElocalhost mishalt ci prim32 prim32,v <— prir«32 enter description, terminated with single '.'or end of file: NOTE: This is NCT the log message I » development » . initial revision: 1.1 done [mishaBlocalhost mishalt Is -1 prir«32,v -r—r—r— 1 misha nisha 888 Ивн 4 20:19 prim32,v [mishaQlocalhost mishalt I X В каталоге misha появился новый файл prim32,v, а краткое описание файла содержит всего одну строку development. По умолчанию версия файла в системе RCS получила нумерацию 1.1. cksum - подсчитывает контрольную сумму и количество байт в файле. Синтаксис cksum [option]...[file]— Команда cksum, производя CRC (a cyclic redundancy check - контроль с помошью циклического избыточного кода), вычисляет контрольную сумму для каждого указанного файла или содержимого стандартного ввода, если аргумент/i/e не задан (присутствует дефис вместо имени файла). Сравнивая контрольные суммы полученных и оригинальных файлов, можно удостовериться в их целостности и корректности. Рассмотренный алгоритм CRC соответствует стандарту POS1X.2, однако он не совместим с алгоритмами, используемыми в системах BSD и System V; он более понятный. ци —help Выводит краткое описание опций и завершает работу программы, —version Выводит информацию о версии программы и завершает ее работу. Пример С помощью команды cksum вычислим контрольные суммы двух файлов: $ cksum vvv tags 3748537741 20 vvv 3293893652 359 tags $
II. Команды 109 В первом столбце показаны контрольные суммы cooiBeicreeiiHo файлов vvv и tagj во вгером- количество байт, содержащихся в упомянутых файлах. С1©ЭГ очищает экран вашего терминала. К Синтаксис clear Возвращает приглашение командной строки на вершину экрана. Эта команда нормально работает, если только установлена переменная окружения TERM, содержащая тип терминала. Обычно тип терминала установлен в значение vl 100. Пример Если команда clear не работает, обычно требуется установить переменную TERM. $ set TERM=vtl00 S Так можно установить переменную TERM для командного процессора tcsh (и не только). СППр - сравнивает 1ва файла. 1\ Синтаксис emp [option] file! file2 \skipl[skip2] ] Утилита emp сравнивает два файла любых типов и заносит результаты сравнения на стандартный вывод. По умолчанию стр "безмолвствует", если сравниваемые файлы одинаковы, в противном случае распечатываются номера байт и строки, отражающие различие файлов. Байты и строки нумеруются, начиная с 1. Опции -1, —verbose Распечатывает смещения и различающиеся значения (восьмеричные) в местах, где обнаружено несовпадение. -s, —quiet, —silent Ничего не сообщает о найденных различиях, лишь выводит код возврата. -с, —print-chars Распечатывает различающиеся байты как символы. -i N, —ignore-JnitiaI=7V Игнорирует разницу в первых Мбайт ввода. —help Выводит краткое описание опций и завершает paGoiy программы. —version Выводит информацию о иерсии программы и завершает ее ряСчт.
по П. Команды Необязательные аргументы skipl и skipl определяют смешения в байтах относительно начала соответственно файлов filel и file!, где было отмечено различие. По умолчанию смещение представляется в деся гичном формате, но можно использовать шестнадцатеричное или восьмеричное значение, в этом случае значению предшествует соответственно выражение Ох или 0. Утилита стр возвращает следующие значения: 0 указанные файлы идентичны 1 указанные файлы разнятся; рассматривается случай, когда один из файлов идентичен первой части второго файла. В последующем, если задана опция -s, утилита записывает на стандартный вывод EOF (конец файла), который был достигнут при рассмотрении более короткого файла (до того, как была зафиксирована разница) > 1 встретилась ошибка Пример Ниже приведены распечатки двух текстовых файлов - prim25 и prim26: $ more prim25 This is an example This is first line This is second line This is last line $ more prim26 This is an example This is first line This is second line. This is last line $ Проведем их сравнение, используя опции -с и -1 утилиты стр: S стр -с prim2S prim26 prim25 prim26 differ: char 58, line 3 is 12 "J 56 . $ cmp -1 prim25 prim26 58 12 56 59 124 12 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 150 151 163 40 151 163 40 154 141 163 164 40 154 151 156 145 124 150 151 163 40 151 163 40 154 141 163 164 40 154 151 156 cmp: EOF on prim25 $
II. Команды 111 При подсчете символов учш ываются пробелы и символы NL (newline новая строка). СО проверяет RCS-версии. Синтаксис со [option] file... Команда со позволяет получить нужную версию RCS-файла и хранит ее в соответствующем рабочем файле. Маршруты, сопоставляемые по RCS-суффиксу, соответствуют RCS-файлам, а все остальные маршруты - рабочим файлам. Имена специфицируют пары RCS-файлов и рабочих файлов (см. ci). Версии RCS-файлов могут быть блокированными или неблокированными. Блокирование версии препятствует ее обновлению. Версия, затребованная для чтения и обработки (компиляции), не может быть блокированной. Версия, затребованная для редактирования и отложенной проверки, как правило, должна быть блокированной. Запрос блокированной версии подразумевает, что вызывающий числится в списке доступа к RCS-файлу. В противном случае он должен быть владельцем этого файла или суперпользователем или список доступа должен быть пустым. Версия может быть выбрана по ряду показателей: номер версии, дата/время создания, автор, состояние. При выборе команда со пытается получить наиболее "свежую" информацию; при обращении к RCS-файлу, у которого отсутствует версия, создает рабочий файл нулевой длины. Опции -r[/-ev] Выбирает наиболее позднюю версию, чей номер меньше или равен rev. Если rev указывает ветвь (branch) вместо версии, выбирается самая последняя версия по этой ветви. Если параметр rev пропущен, выбирается последняя версия по ветви, указываемой по умолчанию. Если rev равна $, команда со определяет номер версии по ключевым значениям в рабочем файле. В противном случае значение версии задается несколькими числовыми или символьными полями, разделенными точкой. Если rev начинается с точки, то выполняется обращение к ветви по умолчанию (trunk). Если rev задает номер ветви, за которым следует точка, используется самая последняя версия на этой ветви. -l[rev] Подобна опции -г, но дополнительно блокирует версию также и для вызывающего. -u[rev] Подобна опции -г, но выполняет разблокирование, если версия ранее была заблокирована этим вызывающим. Если параметр rev npoii> щен. пытается найти версию, заблокированную этим пользователем, в сл\- чае наличия гаковон; в противном случае пытается полуипь наиболее позднюю версию на ветви, определенной по умолчанию. -f]>ev] Принуждает выполнять перезапись рабочего файла: полезна в eo4cia- нии с опцией-q.
112 It Команды -kkv Генерирует ключевые строки, используя форму, заданную по умолча нню, например, $Rcvision:3.11$ для ключевого слова Revision. Имя пользователя, производившего блокирование, вставляется в поля Header (заголовка), Id (идентификатора) и в строки с ключевым словом locker только в том случае, если файл заблокирован (возможно, с помощью команд ci -I и со -1). Такой вариант принят по умолчанию. -kkvl Подобна опции -kkv, но всегда вставляет имя пользователя, производившего блокирование, в соответствующие места, если данная версия блокирована в настоящий момент. -kk В ключевых строках генерирует только ключевые наименования без их значений. Например, для ключевого слова Revision создается строка $Revision:$ вместо строки $Revision:3.11$. -ко Генерирует старую ключевую строку до того, как проверяет рабочий файл. Например, для ключевого слова Revision создается строка $Revision:l.l вместо строки $Rcvision:3.11$. -kb Генерирует бинарный формат старой ключевой строки. Действует подобно опции -ко, но осуществляет весь ввод и вывод рабочего файла в бинарном формате. -kv В ключевых строках генерирует только значения без их наименований. Например, для ключевого слова Revision генерирует строку 3.11 вместо $Revision:3.11$. -p[rev] Печатает выбранную версию на стандартный вывод вместо того, чтобы сохранять ее в рабочем файле. Эта опция очень полезна, если команда со используется в конвейере. -q[rev] He печатает диагностику. -I|>ev] Осуществляет переход в интерактивный режим работы: пользователь приглашается для ответов на вопросы, даже если терминал не предназначен для стандартного ввода. -Adate Получает самую последнюю из версий на выбранной ветви, у которой проверяемые дата/время не превосходят значения date. Дата и время могут быть заданы в свободном формате. По умолчанию принят формат UTC, хотя допускаются и другие форматы: локальное время локальное время в стандарте ISO 8601 время UTC в стандарте ISO 8601 традиционный формат RCS вывод по команде ctimc +LT (локальное время) вывод по команде date время в стандарте Internet RFC 822 Большинство полей даты и времени может бьпь тяги по умолчанию. И хотя по умолчанию примят часовой пояс 1ПЧ\ он можем быть перекрыт С ПОМОЩЬЮ ОПЦИИ -L.
II. Команды 113 -M[rev] Устанавливает время модификации новою рабочего файла в соответствии с датой версии rev; для команды make гакого рода дата может оказаться весьма существенной. -sstate Получает самую последнюю из версий на выбранной вегви, состояние которой установлено в значение stale. -Т Сохраняет время модификации RCS-файла, даже если он меняется из- за блокирования или разблокирования. -w[logm] Получает самую последнюю версию выбранной ветви, если проверку осуществляет пользователь, зарегистрировавшийся под именем login. -jjoinlist Создает новую версию, которая представляет из себя слияние версий из списка joinlist. Эта опция сохраняется в целях совместимости, хотя лучше доверить выполнение упомянутой функции команде rcsmcrgc. Параметр joinlist - это список пар, разделенных запятыми, в формате rev2:rev3, где rev2 и /ev3 - номера версий в числовом или символьном формате. Для каждой пары команда со связывает revln rev3 в соответствии с revi. Другими словами, все корректировки, преобразующие rev2 в revl, прикладываются к копии revi. Это очень полезно, если revl и rev3 соответственно последние версии двух ветвей, a rev2 - их общий предок. Если revl, revl и revi версии одной и той же ветви, расположенные по восходящей, то с помощью этой опции будет создана новая версия, подобная revi, но отменяющая все изменения, которые имели место при преобразовании revl в revl. Если изменения, преобразующие revl в revl. перекрываются корректировками, создающими rev3 из rev2, команда со сообщает о перекрытиях, как это свойственно команде merge. -V Выводит информацию о версии RCS. -V/7 Эмулирует номер версии RCS, равный п. Параметр и может принимать значения 3,4 или 5. -xsitfjixes Чтобы охарактеризовать RCS-файлы, применяет суффиксы (см. команду ci). -zzone Указывает формат вывода даты через подстановку ключевого слова, а также задает часовой пояс zone, принимаемый по умолчанию в качестве параметра date в опции -Adate. Параметр zone может быть пустым (по умолчанию), числовым смещением в формате UTC или же специальной строкой LT, определяющей локальное время. Если параметр zone пустой (по умолчанию), используется традиционный для системы RCS формат UTC без указания часового пояса и со слэшами, разделяющими части даты; в противном случае вывод даты производится в формате ISO 8601 с указанием часового пояса. Опция -ъ не оказывает никакого воздействия на информацию, хранящуюся в RCS-фаНлах, которая всегда в формате UTC. Строки формата SkeywordS и Skeyword:.. .$. встречающиеся в тексте, заменяются строками типа $keyword:vahw$, где пары kevmird (ключевое слово) и mlue («имение) описаны далее.
114 II Команды Ниже приведены ключевые слова и соответствующие им значения: SAuthorS имя пользователя, регистрирующего версию SDateS дата и время регистрации версии могут рассматриваться в комбинации с опцией -zzone (смещение часового пояса в числовом формате); в противном случае дата задается в формате UTC SHeaderS стандартный заголовок, содержащий полный маршрут к RCS-файлу, номер версии, дату и время, автора, состояние и индикатор блокирования (кто произвел блокирование); может рассматриваться в комбинации с опцией -zzone (смещение часового пояса в числовом формате); в противном случае дата задается в формате UTC SIdS то же, что и SHeaderS, но используется имя RCS-файла без маршрута SLockerS имя зарегистрировавшегося пользователя, осуществившего блокирование версии; это ключевое слово может быть пустым, если версия не блокировалась SLogS сообщение, заполняемое во время регистрации и сопровождаемое заголовком, содержащим имя RCS-файла, номер версии, автора, дату и время; может рассматриваться в комбинации с -zzone; в противном случае дата задается в формате UTC; существующие сообщения регистрации не замещаются, а вместо этого после SLog:...$ вставляется новое сообщение регистрации символьное имя, если таковое задано, используемое для записи версии собственно имя RCS-файла без маршрута назначенный для проверки номер версии полный маршрут к RCS-файлу SNameS SRCSfileS SRevisionS SSourceS SStateS анализируемое состояние, назначенное с помощью опции -s команды res или ci Следующие управляющие последовательности можно встретить в значениях ключевых слов: символ табуляции \t символ новой строки \п пробел \040 $ \044 \ \\ Рабочий файл наследует от RCS-файла полномочия на чтение и исполнение Команда со осуществляет доступ к файлам, как и ci, но ей не приходится читать рабочий файл, если не указан номер версии. Ссылки на RCS-файлы и рабочие файлы не сохраняются. Пр ер С помощью команды со -1 был вызван файл prim39 для редактирования. Пос не чего он был вновь перезаписан, и возникла ноная Персия 1.3.
II. Команды 115 Ш\ rriishe®jocalho3tlocalclornein:/home/rTiisha [mishaSlocalhost mi «half со -1 prim39 prim39,v —> prim39 revision 1.2 (locked* done [mishaElocalhost mishaU ci prim39 prim39,v <— prim39 new revision: 1.3; previous revision; 1.2 enter log message, terminated uith single '.' or end of file: » my new file after editing » . done [mishaBlocalhost mi shall | colcrt - фильтр, позволяющий просматривать на экране дисплея выходные файлы nroff. Синтаксис colcrt l-][-2][file...] Позволяет просматривать в текстовом режиме файлы, созданные tbl и nroff, при этом символы размером в полстроки и подчеркивания (замещаются дефисами) размешаются на новых строках между обычными строками вывода. Опции Подавляет все символы подчеркивания. Создает условия для распечатки символов половинного размера. Обычно при выводе используется минимальное межстрочное расстояние. Данная опция устанавливает удвоенный промежуток между строками, что особенно удобно, если в тексте содержатся верхние и нижние индексы. colrm - удаляет столб ы из файла. таксис colrm [ startcol | endcol ] ] Удаляет указанные столбцы из файла. Входная информация берется со стандартного ввода и после обработки направляется на стандартный вывод. Столбцы нумеруются, начиная с 1. Опци started Определяет столбец, начиная с которого upon чпочигея ум'юнио.
116 И Команды enJcol Определяет последний удаляемый столбец; если лот параметр отсутствует, а задан только начальный столбец, то будут удалены все столбцы, начиная со startcol. Пример Данная команда удаляет из стандартного оглавления катало! а столбец, содержащий символические ссылки: $ Is -al|colrm итого 40 drwx drwxr-xr-x -rw-r—г— -rw-r—г— -rw-r—г— -rwxr-xr-x drwxr-xr-x -rw-r—r— -rw-r—r— drwxr-xr-x -rw-r—r— 15 15 mis ha root misha misha misha misha misha misha misha misha root misha root misha misha misha misha misha misha misha misha root 4096 Ноя 4096 Дек 24 Дек 230 Дек 124 Дек 333 Дек 4096 Дек 435 Дек 3394 Дек 4096 Дек 0 Ноя 1 30 30 30 30 30 30 30 30 30 1 23 16: 16: 16: 16: 16: 16: 16: 16: 16: 23: :19 :24 :24 :24 :24 :24 :24 :24 :24 :24 :22 .bash logout .bashjprofile .bashrc .emacs -kde -kderc -screenrc Desktop prim32 Обратите внимание, что для удаления указывается не номер фактического столбца листинга, а номер столбца символа, соответствующего его началу. Все символы строк, расположенные друг под другом, образуют очередной столбец, т.е. все символы столбца располагаются на одинаковых позициях в своих строках. column - форматирует вводимую информацию Синтаксис (основные опции) column (-tx][-c columns][-s sep][file. •] Утилита column производит форматирование вводимой информации из файла file или стандартного ввода (по умолчанию), разбивая ее на столбцы. В процессе форматирования сначала заполняются строки, а уж потом - столбцы; пустые строки игнорируются. Опции -с columns -s sep -t Параметр columns определяет число столбцов (ширину вывода). Параметр sep задает разделитель столбцов. Используется вмел е с опцией -t. Форматирует вводимую информацию в виде таблицы, нсполы\ я разделитель, задаваемый опцией -s. По умолчанию разделителем столбцов является символ пробела, хо>я опция -s позволяет онредечить другой разделитель. В процессе форматирования сначала заполняет столбцы, и уж пошм строки.
II. Команды 117 Пример Достроим "шапочку" к стандаргной распечагке оглавления текущего каталога. t printf "Полномочия сс-и впад-ц Гр-а Раз-р м-ц День ЧЧ:ММ имя\п"\>; 1в -1|column -t Полномочия Сс-и впад-ц гр-а Раз-р м-ц день ЧЧ:ММ Имя итого 36 йтх 2 root root 4096 Дек 30 17:04 nsmail -rw-r—г— -rw-r—г— -rw-r—г— -rw-r—г— -rw-r—г— -rw-r—г— -rw-r—г— -rw-r—г— -rw-r—г— t combine root root 38 Дек 30 21:08 prim24 root root 75 Дек 30 23:16 prim25 root root 76 Дек 30 23:16 prim26 root root 38 Дек 30 23:17 prim27 root root 270 Дек 30 23:21 prim28 root root 54 Ноя 1 00:05 prim29 root root 0 Ноя 1 22:49 prim30 root root 359 Дек 30 18:17 tags root root 20 дек 30 21:04 vvv создает комбинации изображений. Синтаксис combine [options...]image composite[mask]combined Команда combine объединяет изображения, создавая новые изображения. В последних версиях пакета ImageMagick эта команда была замещена командой composite. Опции -blend valve Смешивает два изображения (заданного процента). -cache threshold Подстраивает пороговое значение памяти (мегабайты), доступное видеокэшу. Пока не будет задействовано 80 Мбайт памяти, пикселы изображения хранятся в памяти. Последующие операции с пикселами переносятся на диск. Если ваш компьютер не имеет достаточного количества оперативной памяти, вы, возможно, захотите подстроить это значение. -colors value Задает предполагаемое количество цветов для изображения (опция ограничения числа цветов). -colorspace type Устанавливает альтернативный гип цветового заполнения. На выбор предоставляются следующие типы: GRAY. OHTA, RGB, Transparent. XYZ, YCbCr, YIQ, YPbPr, YUV или CMYK. По умолчанию ограничение цветности имеет место в цветовом заполнении RGB. Эта опция требует опцию -colors или опцию -monochrome. -comment string Назначает для изображения указанную строку комментария. По >молчанию каждое изображение комментируется именем его файла.
118 II Команды -compose operator Указывает оператор, определяющий альгернагивную операцию' Over In Out Atop Xor Plus Minus Add Substract Difference Bumpmap Replace ReplaceRed ReplaceGreen ReplaceBlue ReplaceMatte -compress type Указываеттип сжатия изображения: None, BZip, Fax, Group4, JPEG, LZW, RunlengthEncoded или Zip. Эта опция обычно используется вместе с опцией -write. Для сохранения двоичного изображения без сжатия вы должны указать опцию +comprcss. -density widthxheight Задает горизонтальное и вертикальное разрешение в пикселах. Эта опция указывает разрешение изображения, когда выполняется дешифрирование страницы PostScript или переносимого документа. По умолчанию принято значение, составляющее 72 пиксела на дюйм в горизонтальном и вертикальном направлениях. Эта опция должна согласоваться с опцией -page. -depth value Задает количество битов (8 или 16) в цветном образце в пределах пиксела. Эта опция применяется для низкоуровневых изображений, глубина цветности которых неизвестна, а именно: для GRAY (изображения в градациях серого), RGB или CMYK. -display host:display[.screen] Указывает Х-сервер для контакта (см. X). -displace horizontaljscalexvertical'scale Сдвигает пикселы изображения, как определено картой смещения (см. composite). -dispose method Определяет метод диспозиции (расположения) для GIF-формата: 0 расположение не указано 1 не располагает между кадрам и 2 перекрывает кадр фоновым цветом из заголовка 3 перекрывает предшествующим кадром -dither Использует диффузию (рассеивание) ошибки по Флойду Штейнбер1л (Floyd/Steinberg), улучшающую изображения, которые страдают or сжатия палитры. Эта опция требует опцию -colors или -monochrome. Базовая стратегия рассеивания состон г в том. чюбм создать пространственное разрешение путем усреднения интенсивное ген нескольких соседних пикселов. -font пате Для отображения текста исполыуетукаишний шрифт XII.
II. Команды 119 -geometry widthxheiglu{+-}x_offset{+-}y offset{%) {!}{<} {>} Устанавливает предпочтительный размер или расположение изображения. По умолчанию во время изменения размеров изображения его пропорции сохраняются. Чтобы заставить изображение принять точно такие размеры, как вы указали, необходимо добавить восклицательный знак. Чтобы указать процент ширины или высоты, следует добавить %. Знак > изменяет размер изображения, если его размер превышает геометрическую спецификацию. Знак < изменяет размер изображения, если его размер меньше указанной геометрической спецификации. -gravity type Выполняет вертикальное и горизонтальное размещение текста, когда аннотирует изображение. Можно задавать следующие направления: NorthWest северо-запад North север NorthEast северо-восток West запад Center центр East восток SouthWest юго-запад South юг SouthEast юго-восток -interlace type Указывает тип чередования (поочередного сканирования линий) для низкоуровневых форматов изображений (RGB или YUV): None (RGBRGBRGBRGBRGBRGB...) по умолчанию Line (RRR...GGG...BBB...RRR...GGG...BBB...) Plane (RRRRRR...GGGGGG...BBBBBB...) Partition как Plane, но разные битовые плоскости (матрицы, образованные совокупностью одноименных битов всех пикселов) сохраняются в разных файлах: image.R, image.G. image.B -label name Назначает изображению указанную метку. -matte Сохраняет матовый (светонепроницаемый) канал, если изображение его имеет, -monochrome Трансформирует данное изображение в монохромное (черный и белый цвета). -negate Заменяет каждый пиксел его дополни тельным цветом: белым с гановнтся черным, желтый - голубым и т.д. Для серой палитры используется опция +ncgatc. -page widthxheighH+-}x_offset{+-}y_offset{%}{'.}{<} {>} Устанавливает предпочтительный размер и расположение канвы тоб- ражения. Опция -page похожа на -geometry. Вы можете иепо'шзовлгь эту опцию, чтобы указать размеры страницы в точкач на дюйм и ш егра-
120 II Команды ннцу TEXT в пикселах. Предоставляется следующий выбор для Postscript-страницы: 11x17 Ledger Legal Letter 792 1224 1224 792 612 1008 612 792 LetterSmall 612 792 ArchE ArchD ArchC ArchB ArchA АО Al A2 A3 A4 A4Small A5 A6 A7 2592 3456 1728 2592 1296 1728 864 1296 648 864 2380 3368 1684 2380 1190 1684 842 1190 595 842 595 842 421 595 297 421 210 297 A8 A9 A10 BO Bl B2 B3 B4 B5 CO CI C2 C3 C4 C5 C6 Flsa Flse 148 210 105 148 74 105 2836 4008 2004 2836 1418 2004 1002 141 709 1002 501 709 2600 3677 1837 2600 1298 1837 918 1298 649 918 459 6498 323 459 612 936 612 936 HalfLetter 396 612 По умолчанию для изображения TEXT принят размер 612x792. Эта опция используется с опцией -density. -quality value Устанавливает уровень сжатия для изображений формата JPEG/MIFF/ PNG. Для изображения в формате JPEG аргумент value меняется от О до 100. По умолчанию принято значение 75. -scene value Определяет номер сцены изображения (номер изображения в последовательности в случае единственного имени файла). Каждое изображение в последовательности определяется этим именем файла и идущим за ним через точку номером сцены. -size widthy.height{+offset} Указывает ширину и высоту низкоуровневых изображений (GRAY. RGB или CMYK) и дополнительно позволяет пропустить любую информацию из заголовка изображения. -stegano offset Скрывает водяной знак (некоторое количество пикселов (offset) от начала изображения). -stereo Комбинирует два изображения, создавая сгерсоапилог. Сохраняет левую сторону стереопары как красный канал и правую с горону как меченый канал выводимого изображения. -tile filename Покрывает изображение плиткой при заполнении графическое цримн- i ива.
II. Команды 121 -treedepth value Указывает глубину цвета (целое значение, обычно 0 или 1) для сохраняемого дерева. Позволяет зада!ь алгоригм ограничения цветов Оптимальная глубина обычно позволяет наилучшим образом и как можно быстрее представить изображение, расходуя при эгом минимум памяти. -verbose Печатает подробную информацию об изображении: номер сцены, имена изображений и комбинированного изображения, размер, класс, общее число уникальных цветов, количество секунд, требуемых для чтения и объединения изображений. ipi ер $ combine arrow.xbm arrow.xbm sum.xbm $ fS /usr/local/gnome/examples/chapOJ File Edit gettings L.ayout Commands Help < Back Л i> Up Forward Rescan Home CpO Cx. DO Dt- Icons Brief Detailed Custom Location:|/usr/local/gnome/examples/chap07 ©C3audiotlle-0.1.9 - О chap05 11 Q control- center-1.0.51 E}Cjesound-0.2.16 ф^З examples I- О apndx - C3 chap01 Ш- C3 chapG2 Г+ЮспарОЗ B-Dchap04 -Qchap05 -Q)chap06 J Name show_xpm_data show_xpm_data.c shom_ij;pm_data.o pmjile Hi. a x I ш T. ;pm_file.o sum.xbm xbitmap.xbm xbmcursor xbmcursor.c xbmcursor.o xmask xhm 1,347 bytes in 1 tile В 198S 21V i Z1U M 198E Справа на рисунке можно увидеть графический файл arrow.xbni, слева - файл sum.xbm. СОПИТ! выполняет построчное сравнение двух отсортированных «айлов. К нтаксис сошп [option|.../ilel file!
122 II Команды Вызванная без опций команда coram создает три выходных столбца. В первом столбце содержатся уникальные сiроки файла/i/el, во втором столбце - уникальные строки файлау?/е2, в третьем столбце - общие строки этих двух файлов. Столбцы шделяются друг от друга символом табуляции. Опции -1>^„ Запрещает вывод уникальных строк файла/7/е 1. -2 Запрещает вывод уникальных с трок файла///е2. -3 Запрещает вывод общих строк этих файлов. —help Выводит краткое описание опций и завершает работу программы. —version Выводит информацию о версии программы и завершает ее работу. Перед использованием команды comm входные файлы должны быть отсортированы с помощью бинарной сортировки или с применением объединенной последовательности, указываемой переменной LCCOLL ATE текущей локали. Во втором случае обязательно, чтобы входной файл заканчивался символом newline (новая строка), в противном случае этот символ будет добавлен. Подобно другим утилитам сравнения comm создает код завершения, не зависящий от результатов сравнения. При нормальном выполнении создается нулевой код завершения, в противном случае код завершения отличается от нуля. Примеры Сначала выполним сортировку текстовых файлов — prim25 и prira26 (см. команду sort): $ sort prim25>prim34 $ sort prim26>prim35 $ more prim34 This is an example This is first line This is last line This is second line $ more prim35 This is an example This is first line This is last line This is second line. $ А теперь дважды применим команду comm с разными опциями для сравнения файлов prim34 и prim35: ~ S comm -12 prim34 prim35 This is an example This is first line This is last line § comm -13_ prim34 prim35 ^-^ This is second line. ^ $ ® Как видно из примеров, можно применять комбинацию опции, например -12. что запрещает стандартный вывод первых двух столбцов, а разрешает вывести лишь гре- iий столбец с общими сфоками файлов »riin34 и prini3S.
II. Команды 123 COITip создает сообщение для отправки по электронной почте. Синтаксис (основные опции) сошр [+folder] [msg][-form formfile] [-иве] [-nouse] [-file file] [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder] [-editor editor] [-noedit ] [-whatnowproc program] [-nowhatnowproc] [-version][-help] Утилита comp (компонент nmh или xmh) копирует форму (шаблон) в предварительное сообщение и затем вызывает текстовый редактор, если только не задана опция -noedit. Если файл components существует в пользовательском каталоге nmh, он будет использоваться в качестве упомянутой формы сообщения. Основные опции -form formfile Указывает §аяп formfile, содержащий альтернативные формы. +folder Использует содержание существующего сообщения как форму. msg Использует содержание существующего сообщения как форму. -use Предполагает продолжение редактирования для уже готового сообщения. Могло случиться, что работа утилиты comp была прервана без отправки уже готового сообщения, в этом случае можно продолжить редактирование с помощью команды comp -use. -file file Использует файл/?/е в качестве предварительного сообщения. -draftfolder +folder Использует для создания предварительного сообщения указанную папку л-folder. -draftmessage msg Для создания сообщения использует предварительное сообщение. Если эта опция не задана, то создает новый черновик (предварительное сообщение), если только пользователь не вызвал команду comp с опцией -use, так как в этом случае по умолчанию применяется черновик по имени cur. -editor editor Определяет текстовый редактор, применяемый при создании сообщения. -noedit Запрещает использование текстового редактора. -whatnowproc program Указывает программу по имени program, выполняющую распоряжения пользователя в отношении предварительного сообщения. Если параметр program установлен в значение whatnow, будет вызвана встроенная в утилиту comp программа what now. Если вы задаете собственную программу тина whatnow (я чго сейчас делать?), не вызывайте ее предварительно, так как > пиииа comp должна самостоятельно ор1анизовагь запуск это» программы.
124 И Команды -nowhatnovvproc Запрещает использовагь программу, выполняющую распоряжения пользователя в отношении предварительною сообщения. —help Выводит краткое описание опций и завершает работу программы. —version Выводит информацию о версии npoi раммы и завершает ее работу. Стандаргная форма сообщения хранится в файле /etc/nmh/components, хотя содержимое шаблона, хранящегося в <mh-dir>/componcnts, перекрывает упомянутую форму. Предварительное сообщение обычно хранится в <mh-dir>/draft. Ниже описаны компоненты пользовательского файла $HOME/.mh_profile. Path определяет пользовательский каталог nmh Draft Folder по умолчанию создает папку с предварительным сообщением Editor перекрывает текстовый редактор, заданный по умолчанию Msg-Protect устанавливает режим создания нового черновика сообщения fileproc: задает программу перерегистрации сообщения whatnowproc: определяет програму, задающую вопросы "А что сейчас делать?" По умолчанию приняты следующие опции программы comp: +folder (текущая папка), msg (текущее сообщение), -nodraftfolder и -nouse. composite ••зда- смесь изображений. Синтаксис composite [options ...] image composite [mask] composited Команда composite создает композицию из нескольких изображений, соединяет изображения, создавая новые. В результате объединения базового и измененного изображений возникает результирующее изображение composited, обычно имеющее те же размеры, что и composite. Можно использовать необязательную маску mask, чтобы обеспечить информацию о светонепроницаемости, если таковой не было. Аргумент mask - это изображение обычно в градациях серого и того же размера, как и composite. Если изображение mask не в градациях серого, оно будет конвертировано в полутоновое (с разными градациями серого) и применено в качестве информации но непрозрачному каналу. Опции -background color Указывает цвет фона. -cache threshold Подстраивает пороговое значение памяти (мегабайты), доступное вн- деоюшу. Пока не будет задействовано 80 Мбайт памяти, пикселы изображения хранятся в памяти. 11оследующнс операции с пикселами переносятся на диск. Если ваш компьютер не имеет >ioc шгочното количества оперативной памяти, ны, возможно, uixotii те поло роить »то «шчение.
II. Команды 125 -colors value Задает предполагаемое количество цветов для изображения (опция ограничения числа цветов). Опции -dither, -culorspace и -treedepth затрагивают алгоритм 01 раничения числа цветов. -colorspace type Устанавливает альтернативный гип цветового заполнения. На выбор предоставляются следующие типы: GRAY, OHTA, RGB, Transparent, XYZ, YCbCr, Y1Q, YPbPr, YUV или CMYK. По умолчанию ограничение цветности имеет место в цветовом заполнении RGB. Эта опция требует опцию -colors или опцию -monochrome. -comment string Назначает для изображения указанную строку комментария. По умолчанию каждое изображение комментируется именем его файла. -compose operator Указывает оператор, определяющий альтернативную операцию: Over In Out Atop Xor Plus Minus Add Subtract Difference Multiply Bumpmap Copy CopyRed CopyGreen CopyBlue CopyOpacity -compress type Указывает тип сжатия изображения: None, BZip, Fax, Group4, JPEG, Lossless, LZW, RunlengthEncoded или Zip. Эта опция обычно используется вместе с опцией -write. Для сохранения двоичного изображения без сжатия вы должны указать опцию +compress. -debug Разрешает вывод отладочной информации. -density widthxheight Задает горизонтальное и вертикальное разрешение в пикселах. Эта опция указывает разрешение изображения, когда выполняется дешифрирование страницы PostScript или переносимого документа. По умолчанию принято значение, составляющее 72 точки на дюйм в горизонтальном и вертикальном направлениях. Эта опция должна согласоваться с опцией-page. -depth value Задает количество битов (8 или 16) в цветном образце в пределах пиксела. Эта опция применяется для низкоуровневых изображений. гл\бн- на цветности которых неизвестна, а именно: для GRA\ (изображения в градациях серого), RGB или CMYK. -displace horizontal scalexvertical scale Сдвигает пикселы изображения, как определено в карте смешения. По умолчанию смешение прикладывается в двух нанранленинч: горнзон-
126 II Команды тальиом и вертикальном. В случае этой опции изображение composite используется как карта смешения. Черный цвет внутри карты смешения является максимальным положительным смещением, белый - максимальным отрицательным, средний серый - нейтральным (нулевым смещением). Если указывается маска, то изображение composite рассматривается как горизонтальное смещение, а маска - как вертикальное. -display host;display[.screen~\ Указывает Х-сервер для контакта (см. X). -dispose method Определяет метод диспозиции (расположения) для GIF-формата: 0 расположение не указано 1 не располагает между кадрами 2 перекрывает кадр фоновым цветом из заголовка 3 перекрывает предшествующим кадром -dissolve percent Создает цифровой спецэффект DVE ("растворяет" одно изображение в другом) при переходе от одного фрагмента к другому. Размытость изображения composite умножается на заданный процент percent и затем смешивается через основное изображение. -dither Использует диффузию (рассеивание) ошибки по Флойду/Штейнбергу (Floyd/Steinberg), улучшающую изображения, которые страдают от сжатия палитры. Эта опция требует опцию -colors или -monochrome. Базовая стратегия рассеивания состоит в том, чтобы создать пространственное разрешение путем усреднения интенсивностей нескольких соседних пикселов. -encoding type Указывает шифрование (кодирование) шрифта. Выбор производится из AdobeCustom, AdobeExpert, AdobeStandard. AppleRoman, BIG5, GB2312, Latin 2, None, SJIScode, Symbol, Unicode, Wansung. -endian type Задает окончания (MSB или LSB, см. приложение VI) в выводимом изображении. -filter type Указываеттип фильтра для изменения размера изображения'. Point, Box, Triangle, Hermite, Hanning, Hamming, Blackmail, Gaussian, Quadratic, Cubic, Catrom, Mitchell, Lanczos (по умолчанию), Bessel, Sine. -font name Для отображения текста использует указанный шрифт X И. -geometry widthx.height{+-)x offset {+-}y_offset{%} {@} {!} {<} {>} Устанавливает предпочтительный размер и расположение окна изображения. По умолчанию во время изменения размера пытается сохранять формат изображения (соотношение ширины и высоты). Чтобы вынуди гь изображение принять некий определенный размер, добавьте в конце восклицательный знак. Вы можете указать процент ширины (или высоты), добавив %, и изменить размеры с помощью <>. Символ > меня- е г размер изображения только в том случае, если его ширина или высо-
II. Команды 127 га превышает геометрическую спецификацию. Символ < меняет размер изображения только в гом случае, если его ширина и высота меньше, чем геометрическая спецификация. Символ @ указывает максимальную область изображения в пикселах. -gravity type Указывает географическое размещение текста, когда аннотирует изображение. Можно задавать следующие направления: NorthWest северо-запад North север NorthEast северо-восток West запад Center центр East восток SouthWest юго-запад South юг SouthEast юго-восток -interlace type Указывает тип чередования (поочередного сканирования линий) для низкоуровневых форматов изображений (RGB или YUV): None (RGBRGBRGBRGBRGBRGB...) по умолчанию Line (RRR...GGG...BBB...RRR...GGG...BBB...) Plane (RRRRRR...GGGGGG...BBBBBB...) Partition как Plane, но разные битовые плоскости (матрицы, образованные совокупностью одноименных битов всех пикселов) сохраняются в разных файлах: image.R, image.G. image.B -label name Назначает изображению указанную метку. -matte Сохраняет матовый (светонепроницаемый) канал, если изображение его имеет. -monochrome Трансформирует данное изображение в монохромное (черный и белый цвета). -negate Замещает каждый цвет его дополнительным, или аддитивным, цветом. Для любого цвета имеется противоположный цвет, от смешения с которым может получиться белый. Белый цвет станет черным, желтый - голубым и т.д. -page widthxheight{+-}x_offset{+-}y_offset{%} {!} {<} (>> Устанавливает предпочтительный размер и расположение канвы изображения. Опция -page похожа на -geometry. -profile filename Добавляет к изображению 1СМ, информацию новостей или характерный профиль. Используйте +profilc icm. +profilc iptc млн -fprofilc profilename, чтобы удалить соответствующий профиль. Используйте команду identify -verbose, чтобы выявить профили в данном файле изображения.
128 II Команды -quality value Устанавливает уровень сжагия для изображении формага JPfcG/MIFF PNG. Для форматов JPEG и MPEG значение value меняется от 0 (наивысшее сжатие) до 100 (наименее эффективное сжатие) при принятом по умолчанию 75. Используйте опцию -samplingfactor, чтобы указать коэффициенты цветности (цвеюразностных сигналов) затружаемых сэмплов (образцов). -resize <width>x<height>{%} {@} {!}{<} {>} Это псевдоним опции -geometry, действующий таким же образом. Если данной опции предшествует опция -filter, используется указанный фильтр. Но существуют некоторые исключения: -resize передает предпочтительный размер выводимого изображения, в то время как -geometry - размер и размещение изображения composite. -rotate degrees{<} {>} Вращает изображение по методу Паеса (Paeth). Символ > вращает изображение только в том случае, если его ширина превышает высоту; символ < вращает изображение только в том случае, если его ширина меньше высоты. Если вы используете символы < и >, рекомендуется заключать их в двойные кавычки, например, так: -rotate "-45>". -sampling_factor horizontal'_factorXvertical_factor Указывает горизонтальный и вертикальный коэффициенты сэмплирования, эти коэффициенты используются кодировшиками JPEG, MPEG-2 и YUV для определения цветности (цветоразностного сигнала) при загрузке образцов. -scene value Устанавливает номер сцены изображения или первое изображение в последовательности изображений. -sharpen radiusKsigma Усиливает резкость данного изображения, используя гауссов оператор с заданным радиусом и стандартным отклонением. -size widthx-height {+offset} Указывает ширину и высоту низкоуровневых изображений (GRAY. RGB или CMYK) и позволяет пропустить любую информацию из заголовка изображения или сообщить количество цветов в таблице отображения. Выбирайте следующие размеры для изображений Photo CD: 192x128 384x256 768x512 1536x1024 3072x2048 Также используйте эту опцию для выбора индивидуального разрешения изображения формата JBIG или JPEG. -stegano offset Скрывает водяной знак (торговую марк> или друг>10 оно шапагельн> ь> информацию) внутри изображения. Использует смещение offset, чтобы начать изображение, скрьиия ряд пикселов от его начала.
II. Команды 129 -stereo Комбинирует два изображения, создавая сгереоаналог. Сохраняет левую сторону с гереоиары как красный канал и правую с i орону - как зеленый канал выводимого изображения. -treedepth value Указывает глубину цвета (целое значение, обычно 0 или 1) для сохраняемо! о дерева. Позволяет задать алгоритм ограничения цветов. Оптимальная глубина обычно позволяет наилучшим образом и как можно быстрее представить изображение, расходуя при этом минимум памяти. Однако принятая по умолчанию глубина непригодна для некоторых изображений. Для получения наилучшего представления изображения можно нопробова1 ь значения этого параметра между 2 и 8. -trim Выполняет подгонку краев изображения, удаляя любые края, имеющие тот же самый цвет, что и угловые пикселы. Используйте опцию -fuzz, чтобы сделать возможным удаление краев почти такого же цвета, как и цвет угловых пикселов. -type Ivpe Задает тип изображения. Выбирать можно из следующих типов: Bilevel, Grayscale, Palette, PaletteMatte, TrueColor, TrueColorMatte, ColorSepa- raiion, ColorSeparationMatte или Optimize. Обычно любой формат поддерживает еще и дополнительные форматы, входящие в основной формат, из которых кодировщик и пытается выбрать наиболее эффективный. Данная опция запрещает эту особенность, задавая жесткий формат. -units type Устанавливает Зин разрешения (единицы измерения разрешения), применяемого при выводе изображения: Undefined (неопределенный, принят по умолчанию), PixelsPerlnch (пикселы на дюйм) или PixelsPerCen- timeter (пикселы на сантиметр). -unsharp radiusxsigma С помощью оператора-маски усиливает четкость (резкость изображения), используя заданный радиус radius и стандартное отклонение sigma. -verbose Печатает детальную информацию о данном изображении: номер сцены в сценарии, имя и размер изображения, общее количество уникальных цветов, класс или псевдокласс изображения, количество секунд, необходимое, чтобы прочесть и трансформировать данное изображение. -watermark bnghtnessXsatiiration Указывает процент яркости и насыщенности водяного знака (торговой марки или другой опознавательной информации). -write filename Записывает изображение в файл. Пример А 1еперь определим различия между двумя изображениями (Screenshotl.gif и Screenshot2.gif) последовательности и создадим файл отличий но имени diffcrcnce.gif: S compoeite -compose difference Screenshotl.gif Screenshot2.gif difference.gif
130 II Команды Далее представлены все гри файла: v rooWlocalhoM:- Я1е Edit View Terminal Go Help [root©localfiost root]# Is -1 *.png -rw-r—r— 1 root root -rw-r—r— 1 root root -rw-r—r— 1 root root [rootfrLocalhost root]# [] 1325 Nov 8 18:49 difference.png 5S120 Nov 8 18:41 Screenshotl.png S6029 Nov 8 18:44 Screenshot2.png -J 1 ±M V rootS'localhosL- Rle Edit View Terminal Go Help [rootElocalhost root]* Is -1 *.png -rw-r—r— 1 root root -rw-r—r— 1 root root -rw-r—r— 1 root root [rootClocalhost root]# [rootMocalhost root]# [] - D 1325 Nov 8 18:49 difference.png 55120 Nov 8 18:41 Screenshotl.png 56029 Nov 8 18:44 Screenshot2.png £ » compress - сжимает пепве-ггает компрессии энные. К Синтаксис compress [-f][-v][-с][-V][-г][-b bits][name...] Утилита compress уменьшает размер файлов, имена которых задаются api умента- ми пате. Если аргумент пате отсутствует, упаковывает содержимое стандартного ввода, а затем направляет его на стандартный вывод. Сжатый файл, замещающий исходный, получает имя, образованное прибавлением суффикса .г к оригинальному имени. Сжатый файл полу чает те же режим доступа, временные метки, владельца и группу, чю и оригинальный файл. Сжатие производится по методу адаптивного кодирования Лемиел-Зив [\ empel- Ziv). Утилша compress пытается сжимать только обычные файлы, но uriiopiip\ei символические ссылки.
II. Команды 131 Опции Обычно пользователь получает пршлашение подгвердить перезапись существующего файла. В случае задания опции -f производит перезапись без подтверждения. С помощью опции -с записывает сжагый файл на стандартный вывод; исходные файлы не меняются. Производит выполнение рекурсивно: если в командной строке указаны каталоги, yi плита compress сжимает все найденные в них файлы. Выводит информацию о версии программы и завершает ее работу. В процессе сжатия согласно алгоритму адаптивного кодирования происходит переключение с 9-битных кодов на 10-битные, 11-битные и т.д. Предел, определяющий число разрядов кодирования, задается с помощью параметра bits, его значение меняется в диапазоне 9-16; по умолчанию принято значение, равное 16. -V Для каждого сжимаемого файла выводит процент сжатия. Пример Ниже приведен вариант сжатия файлов, имена которых соответствуют образцу (шаблону) prim4*: -V -b bits =' misha@|ocalhost.localdomain:/horne/misha |г _ 'В -X' [piisha@localhost misha]$ compress -v prin4* prim40; prim41: — replaced with prim41.Z Compression: 15.88!! — replaced with prim42.Z Compression: 55.49!! — replaced with prim43.Z Compression: — replaced with prim44.Z Compression: replaced with prim45,Z Compression: prirn42 prirn43: prirn44: prim45: prirn49: [mishaGlocalhost misha]$ | 87.095! 33.96!! 35.232 Обратите внимание на первую и последнюю строки листинга. Дело в том, что файлы prim40 и prim49 ■ пустые. consolechars загружает экранные шрифты для EGA/VGA консоли. Синтаксис consolechars I-v| —verbose ] [ -V| —version ] [-h | —help] [-11 —gl ] [ _n I —no-act] [ — f orce-no-sfm] [-H | — char-height=W] [ — ttydevice] [ _m| —acm= | —app-charset-map=acm] [ -M| —old-acm=acm.orig] I _f | —f ont=font .new] I -F | — old-f ont=f ont. orig\ I—old-font-ps£-with-sfm=font.orig'.psfj [ _u | 8£m= | —screen-font-ma p=sfm] [ -U | —old-sf m=sfm. orig] [ -k I —sf m-f allback ] Команда consolechars загружает шрифт п генсрагор символов EGA/VGA. Эгв команда счи 1ываег шрифт 8х// ш файла и iai ружаст его в памя гь, отведенную генерато-
132 II Команды ру символов. Обычно размер И шрифта будет счи!ыва1ься ju файла, хотя файлы некоторых форматов (raw - низкоуровневый формат) не содержат для »гого достаточно информации. В этом случае Нопределяется по размеру файла, при этом предполагается, что такие файлы не могут быть сжаты (упакованы). Если входной файл имеет формат кодовой с границы, содержащей три шрифта 8x8, 8х 14 и 8х 16, тогда для выбора одного из этих шрифтов должна соответственно использоваться одна из следующих опций: -И 8, -11 14 или -II16. Формат кодовой страницы точно распознается по размеру и не может быть сжат (упакован). В настоящее время для ядра Linux не поддерживается режим переключения, поэтому consolcchars ничего не выполняет с текущим режимом EGA/VGA. Пользователь может возложить на себя ответственность за выбор шрифта, соответствующего текущему видеорежиму. Опции -h, -help Выводит краткое вспомогательное сообщение и завершает работу программы. -V, —version Выводит информацию о версии программы и завершает ее работу. -v, —verbose Выводит информацию о происходящем в системный файл ошибок. -п, —no-aci He меняет состояние консоли и ни в один файл ничего не записывает. "'■ ""gl ^ Активизирует набор символов G1 вместо GO. —Uy=device Применяет device в качестве консольного устройства для ioctls (для функций, манипулирующих параметрами специального файла устройства) вместо того, чтобы анализировать, какое следует использовать. Опция полезна для тестирования под X. Команды -ifile, -font=/?/e Задает файл, содержащий изображения символов в формате bitmap (черно-белый растр). Такие образцы изображений символов определяются английским словом gliph, т.е. вырезанный на камне образчик резьбы. Помимо таких образцов символов дополнительные сведения о них могут находиться как внутри файла (файлы PSF), так и в отдельном файле типа screen-font-map (SFM - отображение шрифтов на экране, см. опцию ~sfm). Файлы со шрифтами могут быть сжаты с помощью gzip или compress, но это не относится к файлам raw или файлам в формате кодовой страницы (codepage). Файлы формата raw представляют из себя двоичные файлы, размер которых в байтах составляет 256*Я; они содержат двоичные изображения для каждого из 256 символов: один байт на сканируемую линию и И байт на символ, где 0<Я<32. При этом Н вычисляется исходя из размера файла, именно поэтому последний не может быть ежа г ичн \ накован. -d, —default-font За1ружает шрифт, исполыуемый по умолчанию.
II. Команды 133 -m file, -acm-file, — app-charsel-map=^//7<? Загружает определенную пользователем таблицу оюбражения символов для приложения - ACM (Application-Charset-Map ), сохраняет текущую АСМ. 8-бигные символы, оюбражаемые в символы Unicode (UCS2), посылаются на экран. -М file, —old-acm^/f/e Сохраняет в файле file предшествующую АСМ. -и file, —sfm=file, — screen-font-map=/?/e Загружает файл SFM (см. опцию -f) по имени file. —force-no-sfm Запрещает загрузку SFM при загрузке шрифтов, содержащих его. -Vfile, -old-sfm=/7/e Загружает в файл/;7е текущий SFM. -k file, — sfm-fallback=/?/e Использует заданный/?/е как аварийную таблицу отображения SFM, добавляемую к основной. -F file, —old-font=/?/e Сохраняет в файле file старый шрифт в представленном формате. —old-font-psf-\vith-sfm=/7/e Сохраняет в файле file старый шрифт в формате PSF с соответствующим SFM-отображением. -Н N, — char-heightNV Указывает размер используемого шрифта, где N - число, лежащее в диапазоне от 1 до 31. / По умолчанию в качестве каталога для хранения шрифтов используется /usr/lib/kbd/cnnsolefonts/, для хранения АСМ и SFM - /usr/lib/kbd/consoletrans/. convert - преобразует графические файлы одного формата в графические файлы такого же или другого формата. Синтаксис convert [options..] file [file..] file Утилита convert распознает следующие графические форматы: 8BIM формат Photoshop AVS графический формат AVS для системы X BIE+ формат обмена файлами совместной экспертной группы Bi-level Image experts Group BMP+ растровый файл Microsoft Windows BMP24+ 24-6iiiiiuii растровый файл Microsoft Windows
134 И Команды CACHE CGM CMYK DCM DCX+ DIB DICOM EPDF EPI EPS EPS2 EPSF EPSI EPT FAX+ FIG FITS FPX GIF+ GIF87+ GRAY GRADATION GRANITE HDF+ HISTOGRAM HPGL HTML ICB ICM ICO JBIG+ JPEG LABEL MAP формат нос шинного кэша изображения пакета ImageMagick метафайл компьютерной графики низкоуровневые бирюзовые, пурпурные, желтые и черные бай£ы цифровое отображение и коммуникации в медицинском изображении многостраничный рисунок ("кисточкой") от Zsoft для IBM PC растровый файл Microsoft Windows файл медицинских изображений инкапсулированный мобильный формат документа инкапсулированный формат обмена PostScript от Adobe инкапсулированный файл PostScript от Adobe инкапсулированный файл PostScript уровня II от Adobe инкапсулированный файл PostScript от Adobe инкапсулированный формат обмена PostScript от Adobe инкапсулированный формат обмена PostScript от Adobe с возможностью демонстрации в формате TIFF для факсов Group 3 графический формат TransFig гибкий формат транспортировки формат FlashPix графический формат обмена CompuServe; 8-битный цвет графический формат обмена CompuServe; 8-битный цвет (версия 87а) низкоуровневый формат: байты в градациях серого постепенный переход от одного оттенка к другому, задаваемый в виде имени файла, например: gradation:red-b!ue (от красного к синему) текстура "под гранит" иерархический формат данных гистограмма формат языка HP-GL для плоттера от Hewlett-Packard формат языка гипертекстовых ссылок с отображением для клиента изображение Truevision Targa цветной профиль ICC пиктограмма в стиле Microsoft формат обмена файлами совместной экспертной фуппы Bi-levcl Image experts Group формат Joint Photographic Experts Group - совместной группы фого- экспертов; сжимает 24-битный цвет изображение текста байты красного, зеленого, синего с последующими индексами цнешести изображения
II. Команды 135 МАПЕ прозрачный формат M1FF+ графически!! формаг файлов, принятый в пакете Image Magick для X11; платформо-независнмый формат хранения растровых изображений MNG сетевой формат множественных изображений MONO pacip формата Bi-level, где наименее значащий байт (LSB) идет первым MPEG+ формат обмена файлами Motion Picture Experts Group - группы кино- экспертов MTV+ формат трассировки лучей MTV MVG векторная графика ImageMagick NETSCAPE 216-цветный куб от Netscape NULL нулевое изображение Р ВМ+ мобильный растровый формат в градациях черного и белого PCD формат фото CD; максимальное разрешение при записи достигает 512x768 пикселов Р С L язык управления страницами PCX рисунок ("кисточкой") от Zsoft для IBM PC PDF+ мобильный формат документа PGM+ мобильный формат в оттенках серого PICT быстро воспроизводимый рисунок от Apple Macintosh РIX графический формат Alias/Wavefront RLE PLASMA плазменное фрактальное изображение; основной цвет указывается в виде имени файла: plasma:gray (серое изображение) PNG мобильная сетевая графика PNM+ мобильное отображение Р Р М + мобильный цветной растр PS+ файл PostScript от Adobe PSD расгровый формат, используемый в пакете Photoshop от Adobe PS2+ файл формата PostScript уровня II от Adobe р 7 формат визуализации программы xv RAD радианный графический формат RGB низкоуровневые байты красного, зеленого и синего цветов RGBA низкоуровневые красные, зеленые, синие и матовые байты RLA графический файл Alias/Wavefront; только для чтения RLE кодированный графический файл Utah Run; только для ч гения SGI+ графический файл в формате lrix RGB, используемый на компьютерах SGI с операционной системой lrix SHTML формат языка гипертекстовых ссылок с отображением для клиента
136 II Команды SUN+ растровый файл от Sun SVG Масштабируемая век горная i рафика TEXT низкоуровневый текстовый файл; только для чтения TG A+ графический файл от Truevision Targa Tl FF+ графический файл с тегами (признаками) TIFF24+ 24-битный графический файл с тегами (признаками) TILE текстурный образец "под кафель" TIM файл PCX TIM TIF файл шрифтов в формате TrueType (описание формата идет вместе с графическим файлом, поэтому это мобильный формат) UIL таблица UIL для X-Motif UYVY "слоистый" YUV VICAR формат только для чтения VID Visual Image Directory - каталог визуальных изображений VIFF+ визуализация графического файла no Khorus WIN формат захвата изображения с экрана или на экран компьютера X формат захвата изображения с экрана или на экран X сервера ХВМ растровый монохромный файл XI1 ХС постоянное изображение X сервера в определенном цвете, задаваемом в виде имени файла: хс:Ыие (синего цвета) ХРМ цветной растр системы XI1 XWD цветной файл дампа для просмотра в окне системы X YUV+ графический файл CCIR 601 4:1:1 Если аббревиатура формата содержит завершающий знак плюс, значит, в одном файле может храниться более одного файла изображения. Нужно отметить, что утилита convert обладает десятками опций, ниже приведены некоторые из них. Основные опции -adjoin Соединяет изображения и помещает их в единый файл. По умолчанию все изображения последовательности изображений хранятся в одном и том же файле. Однако некоторые форматы, например JPEG, не поддерживают более одного образа и хранят их в различных файлах. Именно для этого случая предназначена данная опция. -append Добавляет изображение в конец последовательности. Все входные изображения должны иметь одну и ту же ширину или высоту. Изображения одинаковой ширины располагаются сверху вниз. Изображения одинаковой высоты выстраиваются слева направо. Специальная опция +append располагает прямоугольные изображения слева направо. -average Усредняет последовательность изображений.
II. Команды J 37 -blur factor Затемняет изображение. Значение/ос/осявляется процентом усиления (от 0.0 до 99.9%). border widthxheight Окружает изображение фаницей определенного цвета. Размеры определяются значениями widthxheight (ширипахчысота). -bordercolor color Параметр color задает цвет рамки. -box color Устанавливает цвет color прямоугольника, предназначение! о для аннотации. -coalesce Сливает (объединяет) последовательность изображений. -colorize value Раскрашивает изображение цветом, устанавливаемым с помощью опции -реп. Значение value выражается в процентах. Можно определить отдельные значения для красного, зеленого и синего каналов цветности изображения, разделив их слэшами: 0/30/0. -colors value Задает предполагаемое количество цветов для изображения. Фактическое количество цветов может быть меньше, чем затребованное, но уж никак не больше. Дублирующиеся или неиспользованные цвета будут удалены. -comment string Создает к изображению аннотацию string. По умолчанию каждое изображение вполне комментируется именем своего файла. Но тем не менее, можно включить в строку комментария специальные символы формата: %Ь размер файла %d каталог % е расширение имени файла %f собственно имя файла %h высота изображения %m magick (магическое число) %р номер страницы %s номер сцены %w ширина изображения %х разрешение по оси X %у разрешение но оси Y \n newline (символ новой строки) \г символ возврата каретки Если первым символом строки string является @, то комментарий берется из файла, имя которого определяется остальными символами строки string, идущими вслед за ф). -compress type Указывает тип type сжатия изображения. По умолчанию run сжатия определяется заданным файлом графического изображения. Спсциалмия
138 II Команды опция +compress подразумевает хранение двоично10 файла 6ei какого-либо сжатия. Параметр type может принимать следующие шачения BZip LZW Fax RunlengthEncoded Group4 Zip JPEG None -contrast Усиливает или уменьшает контрастность изображения. Эта опция увеличивает разницу между более светлыми и более темными элементами изображения. Опция +contrast уменьшает контрастность изображения. -crop widthxheight {+-}x_offset{+-}[)'_offset]{%} Определяет размеры усеченного изображения: размеры изображения widthxheight (ширинахвысота), а также место расположения образа с помощью +-x_offset и +-y_offset (смещения соответственно по осям х и у). Задается width или height в процентах. -deconstruct Разбивает последовательность изображений на отдельные части. -delay II lOOthsofa second Определяет задержку (паузу) между изображениями в сотых долях секунды. Опция полезна для регулирования последовательности GIF-файлов. -density widthxheight Задает вертикальное и горизонтальное разрешение. По умолчанию принято 72 пиксела на дюйм в горизонтальном и вертикальном направлениях. Эта опция используется вместе с -page. -depth value Определяет глубину (густоту) цвета изображения. Значение value определяет количество бит на пиксел. Допустимое значение 8 или 16. -draw string Аннотирует изображение одним или более графическими примитивами. Сюда включены следующие примитивы, устанавливающие значения string: point точка line линия rectangle прямоугольник fillRectangle закрашенный прямоугольник fillCircle закрашенный круг ellipse эллипс fillEllipse закрашенный эллипс polygon полигон fillPoligon закрашенный полигон color цвет matte прозрачность text текст image изображение
II. Команды 139 Например, каждая строка point, color, matte, text и image требует единственную координату. Тогда как line нуждается в начальной и конечной координагах, rectangle - в координатах верхнего левого и нижнего правого углов. Скажем, polygon требует три или более координат, определяющих его границу. Обычно координаты задаются как целые числа, разделяемые запятыми: -draw 'circle 50,50,100,100' Так можно задать круг с координатами центра 50,50 и с координатами его окружности - 100,100. -enhance Применяет цифровой фильтр для улучшения качества "зашумленного" изображения, -equalize Производит гистограммное выравнивание изображения. -filter type Указывает тип type при изменении размера изображения. Ниже приведены некоторые типы фильтров: Point точка Box ящик Triangle прямоугольник Quadratic квадрат Cubic кубик -flip Создает "зеркальное изображение" по вертикали. -Пор Создает "зеркальное изображение" по горизонтали. -font пате Использует указанный шрифт пате при создании аннотации. Выбранный шрифт может быть шрифтом X сервера, тогда задается длинное полное имя: -*-helvetica-medium-r-*-*-10-*-*-»-*-*-iEo8859-* Для задания шрифтов True Type указывается имя файла шрифта, начинающееся с @. В противном случае вводим шрифт PostScript, скажем, helvetica. -geometry [widthxheight]{+-}[xjoffset]{+-}b'^offset] {%} {!}{<}{>} Задает предполагаемый размер или размещение изображения при кодировании. По умолчанию принимаются максимальные значения width (ширины) и height (высоты). Значения width и height задаются в процентах; при увеличении размера используем значения более 100%, при уменьшении - меньше 100%. Восклицательный знак предполагает точную установку задаваемого значения. Знак > меняет размер изображения, только если его текущий размер превосходит задаваемую спецификацию. Знак < меняет размер изображения в том случае, если его текущий размер меньше задаваемой геометрической спецификации. -gravity type При создании аннотации к изображению указывает reoi-рафическое расположение аннотации по отношению к изображению: NorthWesl северо-западное North ссперное
140 II Кои нды West западное Center центр -monochrome Преобразует изображение в i радации черно! о и белого -normalize Преобра 1ует изображение таким образом, ч гобы охва гить полный диапазон цветовых значений. -opaque color Меняет цвет заполнения изображения на указанный. -paint radius Имитирует закрашивание "масляной краской". Каждый пиксел среди точек, ограниченных окружностью заданного радиуса radius, замещается наиболее часто повторяющимся цветом. -pointsize value Устанавливает размер шрифта PostScript. -quality value Устанавливает уровень сжатия для i-рафических форматов JPEG, MIFF, PNG. Параметр value меняется от 0 (наихудшее качество) до 100 (наилучшее качество сжатия) для формата JPEG. По умолчанию принято значение, равное 75. Примеры $ convert photo01.gif proba.jpeg $ Конвертируется графический файл формата GIF в форма! JPEG. А теперь создадим аннотацию к графическому файлу в позиции (80,120) текстом желтого цвета, используя шрифт helvetica: $ convert -font helvetica -fill yellow -draw "text 80,120 Bird" photo04.jpg photo06.miff $ Cp - • ируе ф."|. К. Синтаксис ср [option] — source dest cp [option]...source..,directory Может копировать один файл source в другой dest. А может также копировать несколько файлов в целевой каталог directory; в этом случае применяется вторая форма команды ср, а последний аргумент командной строки является реально cvmecrRMO- щим каталогом. Опции -a, —archive Сохраняет при копировании насколько ло возможно стр\ к г\р\ и атрибуты оригинальных файлов.
II. Команды 141 -b method, — backup[=method] Выполняет резервирование каждого файла, который может быть перезаписан или удален. Возможные значения method см. в команде 1л (опция -V). -d, —no-dereference Копирует символические ссылки вместо того, чтобы копировать файлы, на которые они указывают. Сохраняет в копиях жесткие ссылки между исходными файлами. -f, —force Удаляет существующие выходные (целевые) файлы. -i, —interactive Требует подтверждения при перезаписи существующих выходных файлов. -1, —link Вместо создания копий обычных файлов создает жесткие ссылки (см. In). -р, —preserve Сохраняет владельца, группу, полномочия и временные метки оригинальных файлов. В случае отсутствия этой опции каждый выходной файл создается с полномочиями соответствующего исходного файла за исключением битов, установленных umask. -р, —parents Формирует имя каждого выходного файла путем добавления слэша к имени выходного каталога и собственно имени исходного файла. В процессе копирования создает любые недостающие каталоги. -г Копирует каталоги рекурсивно. Файлы FIFO и специальные файлы копирует как обычные файлы, т.е. считывает информацию исходного файла и записывает ее в выходной файл. Напоминаю, что файл FIFO (first in - first out, первым вошел - первым вышел) - это тоже один из типов специальных файлов. Этот тип используется для того, чтобы позволить нескольким одновременно работающим процессам обмениваться информацией друг с другом или с некоторым управляющим процессом. Для копирования специальных файлов следует применять опцию -R, сохраняющую их специальную "природу", вместо того, чтобы просто считывать и копировать их содержимое. -R, —recursive Копирует каталоги рекурсивно, сохраняя сущность специальных фан- лов. -spsTse=when Некоторые файлы, называемые sparse (разбросанные), содержат "дыры" в виде последовательности нулевых байтов, которые заполняют впчстую диск, не экономя место. Во многих двоичных файлах часто встречаются последовательности нулевых байтов. По умолчанию ср обнаруживает "дыры" при чтении исходного файла и создает соответствх ющнй выходной файл. Параметр when может принимать следующие значения: auto принимается по умолчанию; выходной файч будет "разбросанным", если таковым является исходный файл
142 II Команды always всегда создается выходной файл с "дырами"; jro нолемто, если входной файл расположен в файловой системе, не поддерживающей файлы типа sparse, а выходной скопирован- ный файл попадает в дру1ую файловую систему, наоборот, поддерживающую гии sparse. never никогда не создается выходной файл тина sparse -s, —symbolic-link Вместо копирования создает символические ссылки. Все имена исходных файлов должны быть абсолютными, т.е. начинающимися со слэша, если только выходные файлы не должны располагаться в текущем каталоге. -S suffix, — suffix=suffix Добавляет указанный суффикс к каждому резервному файлу, создаваемому с помощью опции -Ь. —target-directory=t/i>ec/ory Указывает выходной каталог. -v, —verbose Печатает имя каждого файла перед его копированием. -V method. —veTsion-control=method Меняет тип файла при выполнении резервирования с помощью опции -Ь. Возможные значения method см. в команде In (опция -V). -u, —update Копирует только, если исходный файл source новее, чем выходной файл dest, или вообще отсутствует выходной файл. -х, —one-file-system Игнорирует подкаталоги, расположенные в иной файловой системе, чем та, откуда начинается копирование. Остается в пределах исходной файловой системы. По умолчанию в качестве суффикса имени резервного файла выступает символ ~. П • име • $ ср /etc/Xll/XF86Con£ig. $ Копирует файл /etc/Xll/XF86Config в текущий каталог. CpiO копирует файлы в архив и обр-ти» К Синтаксис cpio {-о|—createH-OacvABVL][-c bytes] [-H format] [-H message] [-0 llusert]host:]archive][-F ] [userg)host:]archive] I—file=[ [user(}]host: ]archive] [—format*format] [—message^message] [ —null) [ —reset-access-time] [ —verbose] [ —dot ] [ —append) I—block-size>=biocA:s] I—dereference] [—io-size=i>yces] I—quiet] [—force-local]]—belp][—version] name-list [archive]
II. Команды 143 cpio {-i|— extract}[-bcdfmnrtsuvBSV][-С bytes] [-E file) l -B format) •-M message\[-R [ user] [:. ] [ group]] [-1 l[userf]host:]arcl>ive) -F llusere)host:]archive]l—fi.le=[[user§]host:)archive] —make-directories][—nonmatching] [—preserve-modification-time] —numeric-uid-gid ] [ —rename] [ —list ] [ —swap-bytes ] I —swap] | —dot ] —unconditional] [—verbose] [—block-size=bIoc*s] [—swap-half words 1 —io-size=bytes] [—pattern-file=fiie] [—format'format] —owner=[ user] [:. ][^roup] ] [—no-preserve-owner][—nessage=messa9e] —force-local ] [ —no-absolute-filenames ] [ —sparse] [ —only-verify-crc) [—quiet][—help][—version][pattern ][archive] cpio <-p| —pass-through} [-OadlmuvLV] [-R [ user] I:. ] [ group] ] [—null] "—reset-access-time] [—make-directories] [—link][—quiet] —preserve-modification-time] [—unconditional] [—verbose] [—dot] —dereference] [—owner=[ user] [:. ] [group] ][—no-preserve-owner] [—sparse][—help][—version] destination-directory name-list GNU-версия cpio копирует файлы в архив (cpio и tar архивы) и из него. Архив - это файл, содержащий другие файлы, а также информацию о них, а именно: имя файла, владелец, временные метки и полномочия на доступ к этим файлам. Архив может располагаться на диске и магнитной ленте, а может передаваться по конвейеру. Команда cpio работает в трех оперативных режимах, а соответственно приведены три формата команды. В первом из режимов cpio копирует файлы в архив. Утилита считывает список name- list имен файлов (по одному в каждой строке) со стандартного ввода и записывает архив на стандартный вывод. С помощью команды find с опцией -depth проще всего создать список имен файлов с минимальными проблемами по части полномочий. Во втором из режимов cpio копирует файлы из архива или распечатывает содержимое архива. Любые аргументы командной строки, не относящиеся к опциям, являются глобальными шаблонами оболочки. Только те файлы архива, чьи имена совпадут с одним или более шаблонами pattern, будут копироваться из архива. Если в командной строке отсутствуют шаблоны, будут копироваться все файлы. И, наконец, в третьем из режимов cpio копирует файлы из одного дерева каталогов в другое. Утилита считывает список файлов для копирования со стандартного ввода; каталог destination-directory, в который производится копирование файлов, задается как аргумент без опций. cpio поддерживает следующие архивные форматы: binary, old ASCII, new ASCII, crc, HPUX binary, HPUX old ASCII, old tar, POSIX.l tar. Формат binary является устаревшим, так как он кодирует информацию о файле способом, исключающим возможность его переноса между машинами с отличающейся архитектурой. Формат old ASCII вполне мобильный, но он не пригоден для работы с файловыми системами, содержащими более чем 65536 дескрипторов. Формат new ASCII успешно справляется с упомянутой проблемой, но, к сожалению, он поддерживается не всеми версиями утилиты cpio (только GNU и Unix System V R4). Формат crc подобен new ASCII, но вдобавок еще позволяет вычислять контрольные суммы, когда создает архив, и сверять их с контрольными суммами, получаемыми при извлечении файлов из архива. Форматы HPUX binary и HPUX old ASCII требуются для поддсржаки совместимости с UNIX фирмы Hewlett-Packard, а для поддержки совместимости с программой tar существ>- ют old tar и POSIX.l tar. Форматы утилиты tar не могут быть использованы для упаковки в архив файлов, длина имен которых превышает 100 символов, п также для > па-
144 И Команды ковки специальных файлов устройств. Хотя I'OSIX.l tar уже позволяет работать с файлами, длина имен которых может достшать 256 символов. По умолчанию программа cpio создаст формат binary. При распаковке файлов из архивов cpio автоматически распознает, с каким архивом она работ ает, и может считывать даже архивы, созданные на компьютерах с отличающимся порядком байт. Ниже приведены опции cpio, некоторые из них применяются лишь для определенных режимов. Опции -О, —null Опция предназначена для первого и третьего режимов. Про!рамма cpio с этой опцией считывает список файловых имен, завершающихся символом 0 вместо символа newline (новая строка). Так что упакованы в архив будут лишь те файлы, чьи имена оканчиваются цифрой 0, ибо команда GNU find только таким образом создает список имен файлов, подлежащих занесению в архив. -а, — reset-access-time После чтения файлов переустанавливает время доступа (на "старое" время). -A, —append Расширяет существующий архив. Опция предназначена только для первого режима. Архив в этом случае - это файл на диске, задаваемый с помощью опции -О или -F. -b, —swap Опция предназначена для второго режима. Выгружает как полуслова слов, так и байты полуслов. Эквивалентна комбинации опций -sS. Эта опция используется для корректного преобразования 32-разрядных целых в случае компьютеров разной разрядности. -В Устанавливает размер блока ввода/вывода в 5120 байт, хотя изначально этот размер составляет 512 байт. —block-size=6/ocA'i Устанавливает размер блока, равным произведению 512 байт на величину, указываемую blocks. -с Использует старый мобильный формат old ASCII. -С bytes, ~io-size=bytes Устанавливает размер блока в байтах в значение параметра bytes. -d, —make-directories Предварительно создает каталоги, где это необходимо. -E/ile, —pattern-file=^?/e Опция предназначена для второго режима. Для извлечения файлов из архивов считывает vafile дополнительные шаблоны поиска, при лом строкиу?/е рассматриваются как аргумен i ы (не опции) upoi рлммы cpio. -f, — nonmatching Копирует лишь файлы, имена которых не совпали с задаваемыми шао- лонами.
II. Команды 145 -F, —file=arcliive Исполь iyer имя файла, указываемое archive, вмесiо стандартного ввода или вывода. Если архив располагается на ленточном накопителе другого компьютера, используется имя файла, начинающееся с host, которому може1 предшествовать имя пользователя user с символом %. Чтобы обратит ься к архиву, расположенному на ленточном накопителе другой машины, необходимо обладать соответствующими полномочиями, которые обычно задаются в пользовательском файле -/.rhosts. —force-local С опциями -F, -I или -О предполагает, что задаваемый архив является локальным файлом, даже если в его имени содержится символ двоеточия. -Н format, —forma\-format Использует формат архива, задаваемыйуЬ/тиа/. По умолчанию для второго режима автоматически распознается формат архива, для первого режима параметр format устанавливается в значение bin. Ниже перечислены используемые форматы: bin устаревший двоичный формат ode старый мобильный формат POSIX. 1 newc новый (SVR4) мобильный формат, пригодный для файловых систем с количеством дескрипторов, превышающим значение 65536 сгс новый (SVR4) мобильный формат, дополнительно обеспечивающий подсчет контрольных сумм tar старый формат программы tar ustar формат POS1X. 1 tar, распознающий аналогичные, хотя и не идентичные архивы GNU tar hpbin устаревший двоичный формат, используемый программой cpio из HP Unix (хранит файлы устройств по-другому) hpodc мобильный формат, используемый программой cpio из HP Unix (хранит файлы устройств по-другому) -i, —extract Производит обработку во втором режиме. -I archive Вместо стандартного ввода использует имя архива, задаваемое параметром archive. Если архив располагается на ленточном накопителе другого компьютера, использует имя файла, начинающееся с host, которому может предшествовать имя пользователя user с символом @. Чтобы обрати гься к архиву, расположенному на лен точном накопит еле другой машины, необходимо обладать соответствующими полномочиями, которые обычно задаются в пользовательском файле -/.rhosts. -к Служит для совместимости с другими версиями cpio. -1, —link Создает ссылки вместо копирования файлов в rex случаях, копл что возможно.
146 II Команды -L, --dereference Следуя символическим ссылкам, копирует именно файлы, на которые они указывают, а не ссылки. -m, —preserve-modification-time При создании сохраняет время последней модификации файлов. -М message, — message=message Когда достигнут конец тома очередного сменного носителя (магнитная лента или дискета), выдает сообщение message, приглашающее пользователя установить новый том. Если message содержит символы %d, то они будут замещены текущим номером тома, при этом нумерация начинается с 1. -п, — numeric-uid-gid Выводит идентификаторы пользователя (UID) и группы (GID) вместо их имен. Используется с опцией -v. —no-absolute-filenames Во втором режиме создает все файлы относительно текущего каталога, даже если в архиве хранились абсолютные имена. —no-preserve-owner Во втором и третьем режимах не меняет владельца файлов, а именно: собственником файлов будет считаться пользователь, извлекающий их. По умолчанию эта опция устанавливается для непривилегированных пользователей. -о. —create Производит обработку в первом режиме. -О archive Вместо стандартного вывода использует имя файла archive. Если архив располагается на ленточном накопителе другого компьютера, используется имя файла, начинающееся с host, которому может предшествовать имя пользователя user с символом @. Чтобы обратиться к архиву, расположенному на ленточном накопителе другой машины, необходимо обладать соответствующими полномочиями, которые обычно задаются в пользовательском файле —/.rliosts. —only-verify-crc При работе во втором режиме с архивом в формате сгс только проверяет правильность контрольных сумм, не извлекая при этом файлы из архива. -р, —pass-through Производит обработку в третьем режиме. —quiet He распечатывает количество скопированных блоков. -г, —rename Переименовывает файлы в интерактивном режиме. -R [user][:.][group], — ovmei=[user][:.][groiip] В первом и третьем режимах устанавливает владельца всех создаваемых файлов и/или ipynny соответственно в значения user н'или group. Хотя бы один из параметров user или group должен обязательно при-
II. Команды 147 сугствовать. Если отсугсшует group, но ирисугс1вует разделитель в виде символа двоеточия или ючки, будег установлена ipynna. назначенная пользователю при регистрации в системе. —sparse Во втором и третьем режимах записывае г в порядке исключения файлы с большими нулевыми блоками, -s, —swap-bytes Во втором режиме загружает в файлы байты каждого полуслова (пара байтов). -S, — swap-halfwords Во втором режиме загружает в файлы полуслово каждого слова (4 байта). -t, —list Печатает таблицу содержимого ввода, -u, —unconditional Производит перезапись всех файлов без запроса подтверждений. -v, —verbose Выводит имена всех файлов; вместе с опцией -t создает листинг в стиле команды Is -I. Для архивов в формате ugtar имена пользователей и групп, имеющиеся в архиве, но отсутствующие в локальной системе, будут замещены именами, которые соответствуют числовым значениям UID и GID, хранящимся в архиве. -V, --dot Для каждого обработанного файла выводит точку. --version Выводит информацию о версии программы и завершает ее работу. Примеры Рассмотрим случай применения команды cpio с командой find: $ find /home -newer /home/misha/prim32 -print|cpio -ov>/dev/fdO /home/misha cpio: /home/misha/.xauth: truncating inode number /home/misha/.xauth /home/misha/ .bash_history /home/misha/prim24 /home/misha/prim25 /home/misha/prim26 /home/misha/prim27 /home/misha/prim28 /home/mi sha/prim29 /home/misha/prim30 /home/misha/prim31 /home/misha/prim33 /home/misha/prim34 /home/misha/prim35 /home/misha/prim36 /home/misha/prim37 /home/misha/prim38 /home/misha/prim39 /home/misha/prim41 /home/misha/prim42 /home/miBha/prim43 /home/misha/prim44 /home/misha/prim45
148 II. Команды /home/miBha/prim40 48 blocks S В данном примере осуществлялся поиск файлов более новых по дате, чем файл /home/misha/prim32, и полученные файлы направлялись в архив на дискете (/dev/fdO). Чтобы направить эти файлы в архив на магнитной ленге, достаточно было бы в приведенной команде заменить /dev/fdO на /dev/rmtO. А следующая команда восстановит все файлы созданного выше архива в текущий каталог и создаст при этом необходимые каталоги: $ cpio imvd —no-absolute-filenames</dev/fdO home/misha /home/misha/.xauth /home/misha/. bash__history /home/misha/prim24 /home/misha/prim44 /home/misha/prim45 /home/misha/prim40 48 blocks S cproto - генерирует прототипы функций языка С и преобразует определения функций. Синтакси cproto [option...][file ] Создает прототипы функций, определенных в исходном файле file на языке С. и записывает их на стандартный вывод. Если аргумент/i/e отсутствует, cproto считывает содержимое стандартного ввода. Определения функций могут быть как в "старом" стиле, так и в стиле ANSI С. Кроме того, cproto может также отражать декларирование (объявление) переменных, задействованных в исходных файлах. Согласно опциям командной строки cproto также может преобразовывать определение функций указанных файлов "старого" стиля в стиль ANSI С. Оригинальные исходные файлы, упомянутые в директивах типа #includey?/e исходного кода, будут перезаписаны. Если в командной строке отсутствуют имена файлов, программа будет считывать исходный код со стандартного ввода и направлять преобразованный код на стандартный вывод. Основные опции -е Выводит ключевое слово extern перед каждым сгенерированным прототипом или объявлением глобального масштаба. -f и Устанавливает с помощью п стиль созданных прототипов функций, при этом значение и меняется от 0 до 3. По умолчанию принято шаченне и, равное 3, создающее полный прототип функции. Гели и равно 0. никакие нрогомшы не создаются.
II. Команды 149 -' Генерируег гскст для 1Ы-библио1еки, перекрывая дейс!вис опции -f В выходном файле появится комментарий /*LINTLIBRARY*/, а также специальные коммешарии L1NTEXTERN и L 1NTPREPRO, создаваемые с помощью опции -х. -с По умолчанию в проготипах, сгенерированных с помощью опций -fl и -П, отсутствуют комментарии. Эта опция позволяет добавить комментарии. -т Помещает макрос, охватывающий список параметров каждого сгенерированного прототипа. -М я С помощью я устанавливает имя макроса, заданного опцией -т. По умолчанию - Р_. -о file Указывает имя выходного файла, по умолчанию используется стандартный вывод. -О file Указывает имя файла, содержащего перечень обнаруженных ошибок, по умолчанию используется стандартный файл ошибок. -р Не содействует выдвижению формальных параметров в определениях функций "старого" стиля. По умолчанию параметры типа char или short в определениях функций "старого" стиля преобразуются в прототипах функций или в сгенерированных определениях ANSI С в тип int, а параметры типа float - в double. -q He выводит никаких сообщений об ошибках при попытке программы прочесть файл, указанный в директиве #include. -s По умолчанию cproto генерирует объявления лишь для функций и переменных глобального типа. Эта опция позволяет добавить к выходному файлу также и статические объявления. -S Выводит только статические объявления. -Т Копирует определения из каждого включаемого файла. -v Добавляет к выходному файлу объявления переменных из исходного файла. -х Заставляет включать в выходной файл процедуры и переменные, объявленные как extern. -а Конвертирует определения функций "старого" стиля в стиль ANSI С. -t Конвергирует определения функций ANSI С в традиционный стиль. -D name[=val«e] Передает через препроцессор символ (идентификатор) пате указанного значения value для применения в условия типа #ifdef. -U пате Передаст через препроцессор указание удалить любые определения символа пате. -I directory Передаст через препроцессор распоряжение об использовании каталога directory при поиске файлов, упомянутых в директиве ^include.
150 II Команды -Е срр В процессе создания прототипов обрабагынает входные файлы с помощью указанной команды препроцессора языка С. По умолчанию используется /lib/cpp. -Е 0 Не запускает препроцессор языка С. -V Печатает версию программы. В опциях программы распознаются следующие управляющие последовательности: \п новая строка \s пробел \t табуляция СГОП - демон, выполняющий запланированные команды. Синтаксис сгоп Многие задания (процессы) в Linux приходится планировать для регулярного выполнения. Демон сгоп (crond) запускается процессом init и сразу считывает /etc/crontab и файлы из каталога /var/spool/cron. Этот катало) используется для хранения так называемых crontab (таблиц, предназначенных для сгоп) - файлов обычных пользователей, содержащих запланированные задания. Суперпользователь может указать списки пользователей, которым разрешено или запрещено планировать задания для сгоп соответственно в файлах /etc/cron.allow и /etc/cron.deny. Если обычный пользователь решил подготовить набор заданий для сгоп, просмотреть crontab или скорректировть его содержимое, ему следует воспользоваться утилитой crontab, т.к. напрямую с помощью текстового редактора файлы crontab не модифицируются. Демон сгоп активизируется ежеминутно. Просматривает файлы crontab в поисках команд для выполнения. Найдя таковые, запускает их, возвращая по почте вывод владельцу соответствующего crontab. В противном случае сгоп "засыпает", чтобы вновь "пробудиться" через минуту. Пример По умолчанию задания для демона сгоп вашей системы находятся в /etc/crontab, содержимое которого выглядит примерно так: SHELL=/bin/bash PATH=/sbin: /bin: /usr/sbin: /usr/bin MAILTO=root HOME=/ # run-parts 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 22 4 * * 0 root run-parts /etc/cron.weekly 42 4 1 * * root run-parts /etc/cron.monthly
II. Команды J51 t sysstat О * * * 0,6 /usr/lib/sa/sal 600 6 {, 5 19 * * * /usr/lib/sa/sa2 -A & Обратите внимание на первое задание: сценарий run-parts будег запускаться в первую мину гу каждого часа, а каталог /etc/cron.hourly служит его api-уменгом. Поэтому упомянутый сценарий запускает все файлы этого каталога. Значит, стоит поместить какой-либо сценарий в каталог /etc/cron.hourly, и он будет выполняться ежечасно. Просто и эффективно! К тому же не нужно готовить и корректировать файлы crontab. Аналогично, если поместить сценарии в каталоги /etc/cron.daily, /etc/cron.weekly или /etc/cron.monthly, то они соответственно будут исполняться ежедневно, еженедельно, ежемесячно. Команды sal и sa2 автоматически запускаются сгоп. Команда sal накапливает и сохраняет двоичную учетную информацию в файле учетных записей ежедневной жизнедеятельности системы. Команда sa2 записывает ежедневный агчет в каталог /var/log/sa. croniaD .. у :.- crontab-файлы пользователей. Синтаксис crontab [-u user] file crontab [-u user] {-e|-l|-r} crontab создает и модифицирует пользовательские crontab-файлы, используемые демоном сгоп (см. сгоп). Такие файлы обычно располагаются в каталоге /var/spool/cron. Только суперпользователь решает, кому из обычных пользователей можно воспользоваться сгоп. Чтобы пользователь мог планировать задания для сгоп. его имя либо должно быть включено в состав файла /etc/cron.allow, либо не должно встречаться в списке файла /etc/cron.deny. Упомянутые списки составляет суперпользователь. По умолчанию указанный в командной строке файлу?/е замещаеттекущий crontab пользователя, задаваемого с помощью опции -и, либо, если эта опция не определена, владельцем считается пользователь, запустивший команду crontab. Опции -u user Задает владельца файла crontab. -е Для редактирования crontab вызывает редактор, заданный переменной окружения VISUAL или EDITOR. -] Отображает содержимое crontab-фанла пользователя. _г Удаляет crontab пользователя. Строка файла crontab соответствует следующему формату (поля перечисляются в порядке следования, справа указан допустимый ни гериал значений): минуты 0-59 часы 0-23, где 0 это полночь Они месяца 1-31
II Команды месяц 1-12 дни недели 0-7, где 1 - это понедельник (воскресенье - 0 или 7) имя пользователя команды аргументы этих команд Пример Ниже приведен образец строки файла crontab: 01 * * * * misha /home/misha/script Каждую первую минуту каждого часа, в любой день, месяц, неделю будет запущен /home/misha/script. Если требуется выполнять этот сценарий каждые 20 минут, строка примет следующий вид: о, 20, 40 * * * * ... Сценарий пользователя misha по имени /home/misha/script будет запускаться каждые 20 мин. crosspost создает ссылки на перекрестно отправляемые статьи. интаксис crosspost [-D dir][-s][file—] Утилита crosspost считывает информацию о группе и номере статьи из файлов или стандартного ввода, если файлы не указаны. Единственный дефис в списке имен файлов означает, что следует считывать информацию со стандартного ввода. Утилита использует эту информацию для создания жестких или символических ссылок для перекрестно отправляемых статей. Собственно crosspost предназначалась для использования InterNetNews, чтобы создавать ссылки на входящие статьи. Обычно innd - демон InterNetNews - сам может создавать ссылки, но, имея в своем распоряжении для этих целей crosspost, тратит куда меньше времени на дисковые операции ввода/вывода. Входной файл crosspost выглядит примерно так: group.name/241 дгоирЗ,name/479 group4.name/981 Каждая строка входного файла предназначена для какой-нибудь статьи. Точки, встречающиеся во входном файле, транслируются в символ слэша (наклонная прямая), что дает возможность преобразовать наименования группы новостей в маршрут. Предполагается, что первое поле - это наименование существующей копии статьи, на которую crosspost пытается установит ь, если это возможно, жесткую ссылку, в противном случае - символическую ссылку. По умолчанию crosspost использует входные каналы пакета INN, или InterNetNews, что находит отражение в элементе WR файла newsfeeds. On "Ии -D dir Определяет местонахождение спула для обрабатываемых синей.
II. Команды 153 -s По умолчанию после обновления сооше1сгвующих ссылок crosspost осуществляет для каждой статьи системный иыюв Г&упс, который синхронизирует содержимое файла в намят с его содержимым на диске. Для запрещения этого используегея флаг -s. СГурТСНГ производит шифрование всех файлов заданного каталога. cryptdir [dir| Производит шифрование всех файлов заданного каталога dir или текущего каталога, если аргумент dir отсутствует. При этом пользователь дважды приглашается для ввода пароля, который опасно забывать, поскольку невозможно будет восстановить оригинальные файлы. В результате шифрования имена файлов получают суффикс .crypt, что предохраняет файлы от двойного шифрования. К содержимому зашифрованного каталога несложно добавить новые файлы, при этом совершенно не заботясь об уже существующих зашифрованных файлах. CSpIlt - разбивает файл на части. К Синтаксис csplit [option] file pattern Файл разбивается на части в соответствии с шаблоном pattern, а создаваемые части записываются в файлы, имена которых начинаются с комбинации символов хх: ххОО, ххО 1, хх02 и т.д. Если аргумент partem ссылается на несуществующую строку входного файла, то выдается сообщение об ошибке. После обнаружения совпадения с шаблоном, весь остаток входного файла копируется в один последний выходной файл. По умолчанию csplit распечатывает количество байт, записанных в каждый созданный выходной файл. ци -f prefix, —prefix=prefix Использует строку prefix в качестве префикса имен выходных файлов. По умолчанию используется хх. -b suffix, — suffix-fbrmat=.Wj(7£Y Использует строку suffix в качестве суффикса имен выходных файлов. Когда применяется эта опция, упомянутая строка должна обяшгсчмю включагь спецификацию прсобрамвания в стиле printf. сокржшцую флаги спецификаций формата, размер полей, спецификацию точности. Если задается эта опция, то ш норирусчея опция —digits.
154 II Команды -n digits, —6\gils=digits Использует в именах выходных файлов количество цифр, задаваемое значением digits; no умолчанию jtot иарамет р принимает значение, равное 2. -k, —keep-files Сохраняет выходные файлы, даже если заданную разбивку не удалось выполнить. -z, —elide-empty-files Запрещает создание файлов нулевой длины. -s, —silent, —quiet Не печатает размеры выходных файлов. Ниже рассматриваются типы аргумента pattern: N Создает выходной файл, содержащий все строки входного файла, предшествующие строке N (целое положительное). /REGEXP/[OFFSET] Создает выходной файл, содержащий все строки входного файла, которые предшествуют строке, совпавшей с шаблоном REGEXP. Может быть задано смещение OFFSET, осуществляющее сдвиг строк на величину, равную OFFSET. %REGEXP%[OFFSET] Создает выходной файл, содержащий все строки входного файла, начиная со строки, где отмечено совпадение с шаблоном REGEXP. Смещение OFFSET задается, как в предшествующей опции. {REPEAT-COUNT} Указывает количество повторений предшествующего шаблона. Данный тип аргумента - это целое положительное число или звездочка, что означает - производить повторение аргумента, пока не исчерпается входной файл. По умолчанию аргумент PATTERN применяется только один раз. По умолчанию, если возникает ошибка при выполнении утилиты csplit, неожиданно приходит сигнал прерывания, завершения или возникает "зависание", все успевшие возникнуть файлы будут удалены. Пример Просмотрим содержимое файла prim26: $ more prim26 This is an example This is first line This is second line. This is last line А теперь разобьем файл prim26 на части: $ csplit -f xxx prim26 '/line/' 19 57 $
II. Команды 155 Распечатаем возникшие файлы хххОО и xxxOl: $ more xxxOO This is an example $ more xxxOl This is first line This is second line. This is last line $ Еще раз разобьем файл prim26 на части: $ csplit -f yyy prim26 '%line%' 57 $ Распечатаем возникший файл уууОО: $ more уууОО This is first line This is second line. This is last line $ ctags - генеил» ет «айлы тегов ■ я исхспных ко«ов. Синтаксис ctags [option][file]... etags [ option] [ file]... Создает индексные файлы, или файлы тегов (признаков), содержащие описания объектов исходного языка программирования, найденных в файле/?/е. Термин "тег" обозначает объект исходного языка, для которого доступен элемент индексного файла. Программа ctags генерирует файлы в удобной для чтения человеком форме, которые информируют о различных объектах исходного языка программирования. Индексные файлы тегов распознаются многочисленными редакторами, позволяющими легко и быстро отыскать нужный объект. Программа, вызванная как ctags, создает файл тегов для редактора vi, вызванная как etags - для emacs. Способна создавать теги для следующих языковых конструкций: С/С ++ макросы (имена, определенные/неопределенные с помощью #define /#undef) enumerators (энумераторы - перечисляемый тип данных) функции, прототипы, классы определений структуры пространство имен описания типов данных (typcdefs) переменные (определения и описания) элементы множества (массива)
156 II Команды Fortran блоки данных общие блоки точки входа функции интерфейсы метки модули списки имен программы подпрограммы типы вывода Eiffel Java признаки локальные объекты классы поля интерфейсы методы пакеты Язык программирования каждого указанного исходного файла автоматически выбирается на основе расширения имени файла, если только не задана опция —lang. Ниже приведены допустимые значения расширений для вышеперечисленных языков программирования: С *.с C++ Eiffel Fortran Java *.С, *.е * t i *.java '.C++, *.сс, *.срр, *.схх, *.h, *.H, *.hh, *.hpp, *.hxx, *.h++ .for, *.ftn, *.177, *.f90, *.f95, *.F, *.FOR. *.FTN. *.F77, *.F90, *.F95 По умолчанию все другие расширения имен файлов игнорируются. Вызванная без опции ctags создает файл тегов для всех известных исходных файлов текущего каталога. Опции, состоящие из одной буквы, необязательно отделять пробелами от их параметров. Булевы выражения в длинных форматах опций, начинающихся с двух дефисов, могут быть опущены, т.е.: —sort эквивалентна —sort=yes. Выражения =1 и =оп являются синонимами для =yes; выражения =0 и =off - синонимы для =по. Основные опции -л Эквивалентна опции—append. -В Использует шаблоны обратного поиска, так называемые ?regexp'!. Опция игнорируется, если задана опция -е. -е Выводит файл тегов для применения с cmacs. Если вызвана etags. na опция установлена по умолчанию. -f tagfile Задает имя файла гегов. По умолчанию принято tags., или TAGS, если используется опция -е. Если вместо параметра taglile стоит дефис, записывает файл тегов па стандар! ный вывод. -F По умолчанию иснолыует шаблоны прямого поиска, так называемые /regexp/. Опция игнорируется, если за чипа опция -е.
II. Команды 157 -h ligs Задаег список расширении имен файлов, разделяемых точками По умолчанию принят следующий список: .li.Il.hh.hpp.h.\x.h++.inc.def Чтобы восстановить список, ириняшй по умолчанию, указывается опция -h default. -1 lokenlist Указывает список маркеров, специально поддерживаемых при сингак- сическом анализе исходных файлов на языках С и C++. Список маркеров может посгупать прямо из командной с гроки или счигывагься с указанного файла. Если первый символ параметра tokenlisi является точкой или наклонной чертой (прямой илн обрашой), параметр tokenlisi интерпретируется как имя файла, с которого следует произвести считывание списка. В противном случае tokenlisi - эю список специально поддерживаемых маркеров или маркерных нар, разделяемых запятыми или пробелами. В ряде случаев следует заключать список в кавычки. Если требуется проигнорировать список ранее введенных маркеров, используется дефис, задаваемый в качестве параметра tokenlisi. -L file Считывает из указанного файла список имен файлов, для которых создаются теги. Допустимо в качестве параметра file использовать дефис, что предполагает чтение стандар гного ввода. -п Эквивалентна ~excmd=number. -N Эквивалентна ~excmd=pattem. -о tagfile Эквивалентна опции-f/ag/J/e. -р path Использует параметр path в качестве взя того по умолчанию каталога, где находится исходный файл. -R Эквивалентна опции —recurse. -и Эквивалентна опции —sort=no (несортированный) -V Эквивалентна опции —verbose. -х Печатает табулированный, доступный для чтения человеком файл перекрестных ссылок (xref) на стандартный вывод вместо создания файла тегов. Эта опция должна появиться в командно» строке до первого имени файла. —append=yes|no Указывает, что теги, созданные для заданных файлов, должны быть добавлены в уже существующий файл тегов или должны заменить свои предшествующие значения. По умолчанию принят вариант off. Эта опция должна появи гься в командной строке до первого имени файла. Игнорируется, если задана опция -е. —c-lypes=types Указывает список выбранных пшов геговяи.1каС'С++. Параметр types предС1аш1яет и) себя группу односимвольных флагов, обозначающих гип гега, которым иредшес! вуст знак плюс для добавления чанного т una
158 II Команды но умолчанию или жак минус- соответственно для исключения Ни представлен список флагов, обозначающих шпы тегов языка С/С-^. с классы d макроопределения (и имена #undef) е энумераторы f определения функций g имена энумераторов m классы, структуры или элементы множеств (массивов) п пространства имен р прототипы функций и описания [off] s имена структур t typedefs (определения типов данных) и элементы множеств (массивов) v определения переменных х extern (внешнее) и forward (предвари гельное) описание переменных [off] В добавление к этим флагам применяются следующие односимвольные модификаторы: А регистрирует доступ каждого члена класса к файлу тегов С включает дополнительный компонент характеризующий класс элементов в форме класс::элемент. Это позволяет иметь классифицированные теги, что применяется в vi, но чуть ли не вдвое увеличивает файл тегов, гак что подобный модификатор не принят по умолчанию --eiffel-iypes=/vpei' Указывает список выбранных типов тегов языка Eiffel. Ниже приведены допустимые типы: с классы f признаки 1 локальные объекты (сущности) [off]. Можно также применять модификатор С (см. —c-types—types) —excmd=type Определяет тип команды ЕХ, применяемой для определения местоположения тегов в исходном файле. Опция игнорируется, если задана опция -е. Допустимые значения типов - можно использовать полное слово или первую букву — приведены ниже: number для расположения тегов в тег-файле используются только номера строк pattern для всех тегов используются только шаблоны поиска вместо номеров строк, обычно применяемых для макроопределений mixed в угом смешанном режиме в целом неполыуюгея шаблоны за некоторыми исключениями: в ямке I" номера огрок применяются для гсгон макроопределений, п в Foilrtm - для общих блоков
II. Команды 159 —tormat=/evW Меняет формат вывода файла гегов. Существующее значение параметра level - I или 2. Уровень 1 определяет оригинальный формат файла тегов, а уровень 2 - новый расширенный формат. По умолчанию принят уровень 2. Эта опция должна появиться в командной строке до первого имени файла. Игнорируется, если задана опция -е. --fortran-types=/v/>es Указывает список выбранных тегов языка Fortran. Ниже приведены допустимые типы: b данные сгруппированы поблочно m модули с общие блоки п списки имен е точки входа р программы f функции s подпрограммы i интерфейсы t типы вывода 1 метки [off] —help Печатает на стандартный вывод детальное описание опций. —java-types=iypei- Указывает список выбранных тегов языка Java. Ниже приведены допустимые типы (все приняты по умолчанию): с классы f поля i интерфейсы m методы р пакеты В добавление к этим флагам приняты модификаторы А и С (см. опцию --c-types=/jpes). —lang=auto|c|c++|eiffel|fortranljava По умолчанию ctags автоматически (аи1о)определяет язык программирования исходного файла, основываясь на расширении имени файла. С помощью этой опции можно конкретизировать язык исходного файла. По умолчанию принято значение auto. —langrnap=mop... Меняет отображение между расширениями файлов и исходными языками. Каждая отделяемая запятой таблица отображения включает название исходного языка, двоеточие и список расширений имен исходных файлов, разделяемых точками. Если первым символом в таблице является знак плюс, расширения новой указанной таблицы добавляются к прежней. В противном случае происходит замещение старой таблицы на новую. Чтобы очистить таблицу отображения для указанного ( языка программирования, достаточно задать пустой список расшире- иий. Для восстановления таблицы отображения, принятой но умолчанию, применяется ключевое слово default. —recurse=yes|no Выполняет рекурсию каталогов для списка заданных файлов.
160 II Команды —sort=yes|no Определяет, будет ли отсортирован файл ieioB моих именам. Поумол чанию принят значение yes (да). Эта опция должна появиться в кочан »- ной строке до первого имени файла. Hi норируется, если задана опция -е —totals=yes|no Печатает статис i ику о прочитанных исходных файлах и записанных файлах гегов. По умолчанию эта опция отключена, если же применяется, то должна появиться в командной строке до первого имени файла. —verbose=yes|no Печатает подробные сообщения, описывающие действия в отношении каждого заданного файла, —version Выводит информацию о версии программы. Пример S ctags -f prim86 —lang=c prim85 $ Файл prim86 выглядит так: l_TAG_FT.LE_FORMAT 2 /extended format; —format=l will not append ;" to lines/ ITAGFILESORTED 1 /0=unsorted, l=sorted/ ITAGPROGRAMAUTHOR Darren Hiebert /darren6hiebert.com/ 1TAGPROGRAMNAME Exuberant Ctags // !_TAG_PROGRAM_URL http://darren.hiebert.com/ctags/ /official site/ !_TAG_PR0GRAM_VERSION 3.4 /with c, C++, Eiffel, Fortran, and Java support/ variable prim85 /*int variable;$/;" v Для каждого из указанных объектов исходного файла в файл тегов добавляется одна строка, начинающаяся именем тега (идентификатор языка С), за которым следует символ Tab (табуляция). Далее можно видеть имя файла, в котором расположен объект, связанный с этим тегом, и вновь символ Tab. Команда ЕХ, устанавливающая положение тега внутри файла, обычно выглядит в виде шаблона поиска Ipatternl, как в этом примере. ctlinnd управляет се^вехэм InterNetNews. Синтаксис ctlinnd [-h][-s][-t timeout] command [argument...] ctlinnd посылает сообщение в канал innd-сервсра службы InterNetNews. В стандартном режиме функционирования сообщение посылается на серчер, который ныне i- няет затребованное действие и возвращает программе ctlinnd ответ и шик текстового сообщения и кода завершения. Если сервер успешно нынешни комам iy comnumJ, ctlinnd благополучно завершится с нулевым колом и напечатает ответ на стандартном выводе. Если сервер но какой-либо причине не выполнит комлщу, что вызовет vuxp шенис программы ctlinnd с кодом, рапным 1.
И. Команды 161 Опции -s Ьсли используется этот флаг, то в случае успешного тавершения команды не печатает никаких сообщений. -t timeout С номошыо значения timeout, задаваемою в секундах, определяет, как долго следует ждать ответа сервера. Нулевое значение timeout говорит о том, что период ожидания может длиться сколь угодно долго. Отрицательное значение timeout говорит о том, что ответа не ждут. -h Выводит информацию о командах. Все команды command имеют фиксированное число аргументов argument. Если пустая строка выступает в качестве параметра, ее необходимо заключить в двойные кавычки. Некоторые коман ы addhist <Mes.\uge-id> air exp post paths Добавляет элемент в БД history. Вынуждает сервер запротоколировать сообщение Message-id. Заключать сообщение в "угловые" скобки в виде знаков "меньше" и "больше" вовсе не обязательно. Параметры air, exp, post соответственно определяют, когда статья прибыла, когда истекает срок ее действия и когда она была отправлена. Все три параметра являются числами, измеряются в секундах относительно начала века. Если статья не имеет header (заголовка) типа Expires (срок истечения действия), тогда ехр устанавливается в 0. Параметр paths указывает маршрут в каталоге снула новостей, где статья представлена в виде файла. allow reason Допускает дистанционные подключения. В качестве reason - причины подключения - можно взять текст предшествующей команды reject или пустую строку. begin site Начинает подпитку сайта site. Приказывает серверу просмотреть файл newsfeeds в поисках указанного сайта и устанавливает режим его подпитки. Если сайт уже существует, предварительно для него должна быть выполнена команда drop (см. дальше). cancel <Message-lD> Удаляет из локальной системы статью, с указанным сообщением <Message-ID>. changegroup group rest Меняет группу новостей group таким образом, что четвертое поле в файле active становится значением, определенным параметром rest. Эта команда применяется, чтобы сделать группу новостей moderated (регулируемой) нли unmocleratcd (нерегулируемой). checkfile Проверяет синтаксис файла newsfeeds и выводит сообщение, если бычн обнаружены ошибки. Дешльное описание ошибок заносится в файл syslog. drop site Очишае! и исключает указанный сайт.site из серверного списка активно подии i ываемых сайтов.
162 II Команды feedinfo site Печатаег подробную информацию о coci оянни иодни i ки ука saiinoi о сайта site; если в качесше site определена пустая сфока, печатает ана ю- гичную информацию о всех подпитках. flush site Записывает содержимое буфера в указанный сайт site в зависимое! и от вида подпитки, которую получает сайт (см. newsfceds). Если в качес!ве site определена пустая строка, записывает содержимое буфера во все сайты, а также обновляет файл active и БД history (протоколирование). flushlogs Закрывает журнал и файлы протоколирования ошибок, а также переименовывает их, добавляя к актуальному имени расширение .old. БД liistorj (протоколирование) и файл active тоже перезаписываются. hangup channel Закрывает сокет, обслуживающий указанный канал channel входящих сообщений. Это полезно, если происходит "зависание" на входящем канале. help [command] Печатает справку о всех командах или только об указанной параметром command. logmode Приказывает серверу отразить его текущий оперативный режим в системном журнале syslog. mode Распечатывает информацию об оперативном режиме сервера в виде строки, содержащей параметры и описание текущего состояния. name nnn Печатает имя канала за номером ппп или всех каналов, используя при этом в качестве значения ппп символ у (да) или п (нет). newgroup group rest creator Создает указанную группу новостей group. Параметр rest определяет четвертое поле (права пользователей на доступ к данной группе новостей) файла active. Если параметр rest установлен в у, пользователям разрешается размещать свои статьи в данной группе, если rest установлен в п, пользователям запрещается размещать свои статьи в этой гр\ ппе. Необязательный параметр creator задает имя человека, создающего группу новостей. pause reason Останавливает работу сервера так, что не осуществляется получение входящих статей. Хотя существующие подключения не закрываются, л закрывается лишь БД протоколирования. readers flag text Разрешает (значениеу/og установлено и у) или запрещает (значение flag установлено в п) чтение новостей. Приказывает серверу передать содержимое text как значение для nnrpd с флагом -г. reject reason Дистанционные подключения, которые не могу г бы гь вр> чи\ ю иеречн- ны nnrpd, отвергаются, причина излагается n reason.
II. Команды reload what reason Сервер обновляв находящиеся в памяти копии различных конфигурационных файлов. При этом what указывает, что должно быть перезагружено. Если в качестве what задана пустая строка, или слово all, будет переза1ружено все. Ниже приведены некоторые возможные вари- ан гы перезагрузок в зависимости от значения what: history будет закрыта и вновь открыта БД history incoming.conf будет перезагружен файл incoming.conf active будут перезагружены файлы active и newsfeeds newsfeeds буду г перезагружены файлы active и newsfeeds renumber group Просматривает каталог спула для заданной группы новостей group в целях обновления меток low-water и hi-water в файле active. Каждая из новостей в группе имеет свой уникальный номер. В любой момент локальному узлу доступны новости с номерами, принадлежащими некоторому диапазону. Метки low-water и hi-water соответственно указывают наименьший и наибольший доступные номера этого диапазона. Если в качестве group задана пустая строка, просматривает каталоги спулов для всех новостей. rmgroup group Удаляет указанную группу новостей group. Это осуществляется лишь путем редактирования файла active и не задевает каталог спула. В отличие от другой команды - newgroup - рассматриваемая команда не обновляет файл active.times и может выполняться, лишь когда основная работа сервера прервана или он только запущен. shutdown reason Завершает работу сервера по причине, указанной reason и регистрируемой в системном журнале. Содержание строки reason рассматривается по всем открытым подключениям. Целесообразно сначала выполнить команду throttle. signal sig site Посылает сигнал sig указанному сайту site. Параметр sig может быть номером сигнала или словом по типу hup, int, term, регистр при этом роли не играет. throttle reason Прерывает поступление входной информации таким образом, что все существующие подключения закрываются, а новые-отвергаются. Также закрывается и БД history. trace item flag Включает или отключает трассировку указанной темы item. Флаг flag должен соогветственно начинаться либо с буквы у, либо п. Если значение параметра item начинается с числа, трассировка устанавливается для канала innd, который должен быть установлен для входящей подпитки NNTP. Если значение item начинается с буквы i, тогда включается или отключается общая трассировка innd. xaborl reason Сервер регистрирустзадаиаемую причину reason и з.ием вычывастути- лигу аварийного завершения abort.
164 II Команды хехес path Сервер coGcibchho готов завершить свою рабогу, но нмесю -лого эа пускает на выполнение программу, мес гоположение которой определяется маршрутом path. Парамеip path может содержать строку innd, iiindstart или пустую строку. Каждая статья - это отдельный файл, а каждая группа - отдельный подкаталог. Статьи нумеруются в порядке поступления; каждая статья хранится в файле, причем, имя файла соответствует номеру статьи. В файле active хранятся номера статей, доступных в настоящее время через каналы связи. ctrlaltdel - устанавливается последовательность действий, аналогичных тем, которые возникают при нажатии клавиш Ctrl+Alt+Del. Синтаксис ctrlaltdel hard|soft Существуют две основные последовательности действий: "жесткий" перезапуск (hard), когда сразу же происходит перезагрузка без вызова sync и без каких-либо еще предварительных приготовлений; "мягкий" перезапуск (soft), предполагающий предварительную посылку SIGINT (см. приложение I) процессу ink, PID которого всегда равен 1. Команда ctrlaltdel обычно используется в конфигурационном файле /etc/rc.local. Опции hard Осуществляет "жесткий" перезапуск, soft Осуществляет "мягкий" перезапуск. CU устанавливает соединение с другой системой. К. Синтаксис cu [option] [system\phone\uix] Команда cu устанавливает соединение с другой системой, используя теаефоннчю связь. Она может производить упрощенную пересылку файлов без проверки ошибок. Помимо опций команда си воспринимает единственный аргумент. Fcait в качестве аргумента задается строка dir, команда си устанавливает прямую связь с портом, что требуется в случае перепрограммирования модема и предполагает наличие соответствующих полномочий у пользователя, выдавшего команду. 13 пропитом случае, ест аргумент начинает ся с цифры, предполагается, что указан/>/к>;м.' номер телефона дчя вызова. Если аргумент не начинается с цифры, считается, что задано ими системы system. Впрочем, имя системы может начинаться с цифры, в л том случае еле г» ег\ катать опцию -/, или —system, так же, как и в случае номера телефона, начинающеюся не с цифры, приходится использовать опцию -с, или —phono
II. Команды 165 Порт, используемый си. обычно описывается в конфш урационных файлах UUCP В простейших случаях можно в качес гве имени сие темы ука югь com ветствующии порт. Когда выполнено подключение к другой дисонционной системе, си ра1ветвляется на два процесса: один считывает информацию, пришедшую через порт, и записывает ее на терминал, другой, наоборот, счш ывает информацию с терминала и записывает ее на заданный порт. В арсенале си имеется несколько команд, применяемых при подключении. Команды начинаются с управляющего символа (тильда) ~. Этот символ распознается только в начале строки и должен быть введен дважды. Все команды представляют из себя или единс i веннш символ, или слово, начинаюшееся со знака процента %. Основные коман ы —. Прерывает диалог систем. ~! command Запускает команду command в командном процессоре, или в оболочке. ~$ command Запускает команду command и направляет стандартный вывод на дистанционную систему. —| command Запускает команду command, принимая стандартный ввод с дистанционной системы. —н command Запускает команду command, принимая стандартный ввод с дистанционной системы и направляя на нее, в свою очередь, стандартный вывод. ~#, ~%break Посылает сигнал прерывания, если это возможно. —с director}', ~%cd directory Меняет локальный каталог. ~> file Посылает файл/?/р на дистанционную систему: предполагается, что она ожидает этого. ~< Получает файл от дистанционной системы. Возникает приглашение, позволяющее ввести локальное имя файла, а также команду, которая должна быть выполнена на дистанционной системе, чтобы начать передачу файла. Прием информации будет продолжаться до появления переменной eofread. -pfrom to, ~%put from to Копирует файл^го»; локальной системы в файл to дистанционной Uni\- системы, при этом запускаются соответствующие команды на дистанционной системе. ~lfrom to, ~%tukefrom to Копирует файл fivm дистанционной Unix-системы в файл to локальной системы, при тгом запускаются соответствующие команды на дистанционной системе. ~s variable value Устанавливает переменную variable в значение value. Fcjih value отсутствует, переменная variable устанавливается в значение true. ~! variable Устанавливает переменную variable в значение false.
166 II Команды ~z Приостанавливает сессию у 1 илиiu си, чго поддерживается лишь на некоторых системах. ~%nostop Отключает поддержку XON/XOFF. ~%stop Включает поддержку XON/XOFF (передача в режиме ciapi cioiij. ~v Распечатывает все переменные и их значения. ~? Распечатывает все команды. Утилита си также поддерживает несколько переменных, которые могут быгь распечатаны с помощью команды ~v и установлены с помощью ~s или —!. escape Назначает управляющий символ (но умолчанию тильда ~). delay Если эта переменная истинна (true), cu выполнит задержку после распознавания управляющего символа до печати имени локальной системы. По умолчанию принято значение true. echonl Этот символ должен быть обнаружен в конце каждой передаваемой с троки файла. По умолчанию принят возврат каретки. timeout Задает тайм-аут в секундах. Может быть установлен при поиске символа echonl. По умолчанию принято значение 30. eofwrite Строка, записываемая при получении файла с помощью команды —>. Означает конец отправляемого файла. По умолчанию принята AD. eofread Строка, отыскиваемая при получении файла с помощью команды —<. Означает конец принимаемого файла. По умолчанию принята $, что соответствует типичному приглашению оболочки. Команда си использует несколько опций (options). Опции -е, —parity=even Устанавливает проверку на четность, -о, — parity=odd Устанавливает проверку на нечетность. —parity-none Никакой контроль не выполняется, даже если заданы обе опции - -е и-о. —nostop Отключает поддержку XON/XOFF (по умолчанию). -z system, —system system Указывает систему system для вызова. -с phone-number, —phone phone-number Указывает номер телефона phone-number для вызова. -р port, —port port Указывает имя используемого порта. -1 line, line line Указывает линию, задавая имя смециал i.nom ф.ш.па > с i poiic i ва. Что может быть необходимо, если в конфшурацнонных файлах I Jl'lT она 1-
II. Команды 167 егвуют необходимые описания. Обязательно нужно иметь доступ на запись к лому устройству. -s speed, —speed speed Задает используемую скорость. -d, —debug all Вводи г режим огладки. Для программы си наиболее существенны несколько режимов (см. -х type). -х type, —debug type Включает отладочные режимы, задаваемые с помощью списка type. Отдельные режимы отделяются друг от друга посредством запятой. Ниже приводятся некоторые отладочные режимы: abnormal проверка ненормального завершения chat проверка сценария подключения к дистанционной системе handshake проверка подключения к дистанционной системе проверка входящих сообщений проверка исходящих сообщений incoming outgoing Выводит информацию о версии программы и завершает ее работу. Выводит подсказку и завершает работу программы. -v, —version —help Пример Чтобы подключиться к системе, чей телефонный номер равен 9 1305 777 5678 (гудок ожидается после 9), на скорости 38400, следует задать такую команду: cu -S 38400 9=13057775678 cut - записывает на стандартный вывод выбранные части строк каждого заданного файла. Синтаксис cut [option] — [file]... Если в командной строке отсутствуют имена файлов или в качестве имени определен дефис, производит обработку стандартного ввода. В качестве параметров, определяющих части строк, используются следующие списки: byte-list список байт character-list список символов field-list список полей В списках могут содержаться один или более номеров или диапазонов, разделенных запятыми. Каждый диапазон представляет из себя два числа, разделенных дефисом. Байты, символы и ноля нумеруются, начиная с 1. Могут задаваться неполные диапазоны: так -N означает 1-N; неполный диапазон /V- распространяется до конца строки или до последнего ноля.
168 II Команды Опции -b byte-list, —bytes= byte-list Печатает' только байты из позиций, указанных в списке. Символы Tab (табуляция) и backspace (возврат на символ) трактуются подобно другим символам и занимают один байт. -с character-list, — characters= character-list Печатает только символы из позиций, указанных в списке. С одной стороны очень подобна опции -Ь, но в случае интернационализации будет отличаться. -f field-list, -fields= field-list Печатает только поля, перечисленные в списке. По умолчанию поля разделяются символами табуляции. -d inputdelimbyte, —delimiter^ inputdelimbyte Указывает разделитель полей входного файла вместо используемого по умолчанию символа табуляции. Применяется совместно с опцией -f. -п Не разбивает на части многобайтовые символы. -s, —only-delimited Не печатает строки, в которых отсутствует разделитель полей. Применяется совместно с опцией -f. —oulp\A-delimner=outpitt_delini string Разделяет указанным разделителем поля выходного файла. Применяется совместно с опцией -f. По умолчанию используется разделитель полей входного файла. Пример S cut -d: -fl,5 /etc/passwd root:root bin:bin daemon:daemon adm:adm lp:lp sync:sync shutdown:shutdown halt:halt mall:mail news:news uucp:uucp operator:operator games:games gopher:gopher ftp:FTP User nobody:Nobody xfs:X Font Server gdm: sofia:sklovska ja misha:mishael $ Здесь выводятся первое и пягос поля файла passwd, г.с. список идентификаторов и имен пользователей. В качестве разделителя используется двоеточие обычный вариант в Unix.
II. Команды 169 «"« ос ествляет управление версиями. Синтаксис cvs [cvsoption) cvscommand [command_option]{ command args] CVS (Concurrent Version System - система действующих одновременно версий) - одна из систем управления версиями. Система CVS, подобно RCS, позволяет держагь старые версии файлов, а также регистрировать, кто, когда и какие произвел изменения. В отличие от других подобных систем CVS одновременно работает не только с одним файлом или каталогом - она манипулирует иерархическим набором каталогов, содержащих версии файлов. CVS позволяет организовать параллельное редактирование исходных текстов сразу несколькими пользователями и даже через сеть. В отличие от RCS ей нет необходимости блокировать файлы, если их требуегся отредактировать. СVS хранит копии всех управляемых ею файлов и каталогов в депозитарии (хранилище). Обычно пользователь не имеет прямого доступа к файлам хранилища, вместо этого он использует команды cvs command, чтобы получить копии своих файлов в рабочий каталог, а затем редактировать их. Команды CVS применяются с опциями commandoption, которые не следует путать с опциями самой CVS (см. cvsoption), и аргументами commandargs. Следует отметить, что хранилище - это не подкаталог рабочего каталога, скорее наоборот, они должны располагаться раздельно. Депозитарий CVS может располагаться на локальном компьютере, на компьютере в соседней комнате (обращение через локальную сеть), в другом конце земли. Для указания различных методов доступа к хранилищу само имя может начинаться с компонента, определяющего "методдоступа". Например, выражение :local:/usi7local/cvsuserозначает, что хранилище располагается в /usr/local/cvsuser на компьютере, где запущена CVS. Если метод доступа не указан и даже впереди отсутствует двоеточие, подразумевается :1оса1:, а если двоеточие все же присутствует, то предполагается выражение :e\t: или :server: в зависимости от используемой платформы. Копии исходных файлов и хранилище могут располагаться на разных компьютерах. Тогда С VS применяется в архитектуре "клиент/сервер". Пользователь может запустить CVS на машине, на которой смонтирован его рабочий каталог, известный как "клиент"; может подключиться к машине, на которой смонтировано хранилище, известное как "сервер". А вообще методы работы с локальным и дистанционным хранилищами аналогичны, отличаются лишь форматы имени депозитария: :METHOD:USEReHOSTNAME: /path/to/repository VS (cvsjoptiori) Выводит подсказку по каждой указанной команде cvs command. Ест имя конкрегной команды не указано, будут выводиться подсказки но всем доступным командам. Устанавливает режим молчания, информируя лишь в случае серьезных проблем. Вывод информационных сообщении частично подавляется. Не происходи! вывод сообщений о рекурсиях через подкаталоги. Опции -Н [-help] -Q -q
170 II Команды -b bindir Подавляет установленное значение переменной окружения Rf SBIN, используя bindir в качестве каталога, 1де расползаются профаммы RCS (CVS 1.9 и более старые версии). Это значение определяется как абсолютный маршрут. -d CVS root directory Подавляет установленное значение переменной окружения CVSROOT, используя CVS'root directory для определения местонахождения главного хранилища исходных кодов. Это значение определяется как абсолютный маршрут. -е editor Перекрывает значения переменных окружения CVSEDITOR и EDITOR, используя указанный редактор editor для ввода информации о версии. -f He производит чтение файла ~/.cvsrc. -1 Не регистрирует команду cvs command в протоколе команд, хотя и выполняет ее. -п Не выполняет никаких команд, лишь выдает сообщения, которыми сопровождалось бы их выполнение. -t Пошагово трассирует выполнение программы. -г Переводит новый рабочий файл в режим "только для чтения", действуя подобно установке переменной окружения CVSREAD. -v[—version] Выводит информацию о версии и о "copyright" (право на копирование) для cvs. -w Переводит новый рабочий файл в режим "чтение-запись" (по умолчанию), перекрывая установку переменной окружения CVSREAD. -х Выполняет шифровку информации, передаваемой между клиентом и сервером (пока только доступно для соединения Kerberos). -z compression level Использует указанный уровень сжатия compression level программы gzip, упаковывая и распаковывая файлы при передаче их по сети. Треб\ - ет наличия программы GNU gzip no текущему маршруту поиска на двух связываемых сторонах. Ниже приведены пять наиболее часто используемых команд CVS: cvs checkout modules... используйте эту команду для создания конин исходных файлов modules (набор поименованных исходных текстов); всегда создается, по меньшей мере, один уровень подкаталога cvs update выполняйте эту команду, если вы желаете обновить копии ваших исходных файлов в соответс i вин с изменениями, внесенными чр\тнми по.чыо- вателями в исходные файлы хранилища cvs addfile... используйте эту команду для регистрации новых файчон в шписях os вашего рабочего каталога; сами файлы будут чобавлены в хранилище в следующий раз при запуске команды cvs commit
II. Команды 171 cvs remove file... используйте эту команду для объявления файлов_/?/е, которые вы желаете убрать из хранилища; собственно удаление будет осуществлено,когда вы запустите команду cvs commit cvs commit file... используйте эту команду, когда вы желаете уведомить дру1 их разработчиков о внесенных вами изменениях Необходимо помнить, что в командной строке собственно опции команды cvs располагаются слева, а опции команд cvs - справа от самих cvs-команд. Обычно при старте cvs считывает файл .cvsrc, находящийся в исходном каталоге пользователя, хотя опция -f отключает эту особенность. Файл .cvsrc содержит по одной команде CVS в каждой ст роке со списком аргументов. Например, если в этом файле встретилась строка diff -I, это означает, что всегда будет выполняться команда cvs diff с опцией -1 помимо других опций, указанных в командной строке. Упомянутая опция распространяет действие diff лишь на файлы локального каталога без каких-либо рекурсий, даже если имеются подкаталоги. Далее приведены остальные команды cvs: admin выполняет функции управления: непосредственно вносит изменения в хранилище, используя рабочий каталог, но не меняя его annotate аннотирует каталоги и файлы по указанным версии и дате diff показывает различия между файлами рабочего каталога и исходного хранилища или между двумя версиями хранилища edit позволяет выполнять редактирование наблюдаемого файла editing позволяет увидеть, кто редактирует наблюдаемый файл export экспортирует исходные файлы CVS подобно тому, как это делает checkout history показывает протокол доступа в хранилище import импортирует исходные файлы в CVS jnit создает хранилище CVS, если оно до этого не существовало log распечатывает "историю" файлов login приглашает ввести пароль для аутентификации при подключении к серверу logout удаляет элемент, описывающий дистанционное хранилище rcliff создает patch (заплату) формата diff для вошющения различий между двумя версиями release отмечает, что указанные каталоги не используются, и может их удалить (опция -d) riag добавляет к модулю символический тег- status выводит информацию состояния выбранных файлов: последнюю версию, версию в рабочем каталоге lag добавляет символический тег к извлекаемой версии файлов
172 И Команды unedil отменяет действие предшествующей команды редактирования update приводит ваш рабочий каталог в соогвеютвие с изменениями, проведенными в хранилище; авчоматически проводится слияние, когда это возможно watch включает/отключает режим обрабатываемого файла "только для чтения", добавляет/удаляет ряд возможных действий watchers уст анавливает или отключает рекурсивную обработку каталогов Ниже описаны commandoption, доступные нескольким cvs-командам. Каждая опция поддерживается для тех команд, где это имеет смысл. -D datejspec Использует версии с датой не позднее, чем указано спецификацией datespec. -f Если вы указываете дату и тег (этикетку) в командах cvs, то обычно игнорируюет файлы, не соответствующие этим условиям. При использовании опции -f сохраняет даже те файлы, которые не соответствуют заданным условиям. -Н Помошь: описывает опции, доступные для этой команды. -k kflag Назначает альтернативу обрабатываемым по умолчанию ключевым словам, cvs связывает выбранный пользователем kflag с файлами и продолжает его использовать с командами update с теми же самыми файлами, пока не будет задано что-либо другое. Флаги -ко и -kb наиболее полезны для бинарных файлов. -1 Выполняет обработку только в текущем рабочем каталоге без рекурсий через подкаталоги. -п Не запускает ни одну из следующих программ: checkout, commit, tag. update. -P Удаляет каталоги, ставшие пустыми после проведения обновления с помощью checkout или update; если указывается опция -Р, каталоги будут "молча" (без всяких сообщений) удалены из области извлекаемых копий пользователя, но не из их хранилища; эта опция подразумевается при задании команд checkout и export с опциями -г и -D. -р Направляет файлы, извлеченные из хранилища, на стандартный вывод вместо того, чтобы записывать их в текущий каталог; доступна с командами checkout и export. -г tag Вместо заданной по умолчанию использует версию, определяемую tag: следует отметить, что всегда доступны два специальных тега: HEAD определяет самую последнюю версию в хранилище. BASE - последнюю извлекаемую версию текущего рабочего каталога. 1:сли вы нсиольз\ е- те эту опцию с командами cvs checkout или cvs update, чтобы создать собственную копию файла, cvs запоминает лот tug и нрололжаег применять его с командами update до тех пор, пока не будет указано что- либо другое.
II. Команды 173 IrVlUdLlrll конвертирует пакетные файлы Usenet в формат INN. Синтаксис cvtbatch [-w items] Программа cvtbatch считывает содержимое стандартного ввода как набор строк, затем конвертирует каждую строку и записывает ее на стандартный вывод. В результате обычные пакетные файлы, содержащие наименование статьи, будут преобразованы в пакетные файлы INN, или InterNetNews, которые содержат дополнительную информацию о каждой статье. Каждая строка рассматривается как маршрут к статье Usenet. Впрочем, это не абсолютный маршрут, он берется по отношению к каталогу спула. Анализируется только первое слово каждой строки, все остальное игнорируется. Опции -w items Указывает, как будет записываться каждая выходная строка; значения items выбираются из приведенного ниже набора: b размер статьи в байтах f полный маршрут к статье m идентификатор сообщения, содержащего данную статью п относительный маршрут к статье Если входной файл включает набор идентификаторов сообщений, то используется команда grephistory с флагом -s, передающая информацию по конвейеру команде cvtbatch. СХрГП - ос ществляет проверку файла формата ХРМ. Синтаксис схрш [filename] Файл формата ХРМ может быть использован для хранения большого, высокого разрешения изображения с большим количеством цветов. Графический файл формата ХРМ (X PixMap) представлен в виде исходного кода на языке С. Поэтому вы можете откомпилировать его непосредственно в программу или использовать файл формата ХРМ независимо. Этот формат позволяет использовать ваш текстовый редактор для создания и модификации несложной цветной графики. Команда с\рт распечатывает сообщение, указывающее, где синтаксический анализатор обнаружил ошнбк\.
174 II Команды распечатывает и устанавливает системную дату и время. Си таксис date [option]...l+format] date [ option] [mraddWimra[ [cc]yy] [ .ss] Распечатывает текущее время в заданном формате format или устанавливает системную дату, последнее может выполнять только супергюльзователь. Опции -d, —date=s/rmg Выводит не текущее время, а описанное строкой siring. -f, —file=datefile Работает подобно опции -d, но с каждой из строк файла datefile. -I, -iso-&60\[=TIMESPEC] Выводит строку дата/время в формате ISO-8601. Если TIMESPEC=date или отсутствует, выводится только дата. Если параметр TIMESPEC устанавливается в одно из следующих значений - hours (часы), minutes (минуты) или seconds (секунды), - выводится дата и время с указанной точностью. Если TIMESPEC устанавливается в значение auto (по умолчанию), печатается текущая дата. -г, —reference=y?/e Выводит время последней модификации файла_/?/е. -г, —reference=y?/e Выводит время последней модификации файлауУ/е. -R, —rfc-822 Выводит дату в стандарте RFC-822. -s, —set=string Устанавливает время, описанное string. -и, —utc, —universal Распечатывает или устанавливает время в формате UTC (Coordinated Universal Time - согласованное универсальное время). —help Выводит вспомогательную информацию о программе и завершает ее работу. —version Выводит информацию о версии npoi раммы и завершает ее работу. Управление выводом производится с помощью опции format, шггсрпретирхюгся следующие последовательности: %% литерал % %а сокращенное локализованное название дня недели: Sim (воскресенье) Sat (с\о- бота)
II. Команды 175 %А полное локалшованное название дня недели: Sunday (воскресенье),... Saturday (суббота) %Ь сокращенное локализованное название месяца: Jan (январь),... Dec (декабрь) %В полное локализованное название месяца: January (январь), ... December (декабрь) %с локализованные по местному времени дата и время: Sat Dec 18 12:08:37 EST 1982 %d день месяца: 01 ... 31 %D дата: mm/dd/yy (где mm - месяц, dd - день, уу - год) %е день месяца: 1 ... 31 %h то же, что и %Ь %Н час в 24-часовом формате: 00 ... 23 %1 час в 12-часовом формате: 01 ... 12 %j день года: 001 ...366 (юлианская дата) %к час в 24-часовом формате без предшествующих нулей: 0 ... 23 %1 ч^с в 12-часовом формате без предшествующих нулей: 0 ... 12 %т номер месяца в году (двузначное число): 01 ... 12 %М минута: 00... 59 %п символ новой страницы: newline %р локализованное время AM (до полудня) и РМ (после полудня) %г время 12-часового формата: hh:mm:ss[AP]M %s количество секунд, прошедшее с 00:00:00 часов 1 января 1970 года (UTC) %S секунда: 00 ... 60 %t символ горизонтальной табуляции %Т время в 24-часовом формате: (hh:mm:ss) %U номер недели в году с воскресеньем в качестве первого дня недели: 00 ... 53 %V номер недели в году с понедельником в качестве первого дня недели: 01 ... 52 %w день недели: 0 ... 6, где 0 представляет воскресенье %W номер недели в году с понедельником в качестве первого дня недели: 00 ... 53 %х локализованное представление даты: mm/dd/yy %Х локализованное представление времени: %H:%M:%S %у две последние цифры года: 00 ... 99 %Y год: 1970 ... %Z часовой пояс или ничего, если часовой пояс не определен, например, EDT %z числовой сжль часового пояса в стандарте RFC-822; например, -0500
176 II Команды 1 root@localhost.localdomein:/root Шайл Правка Settings Справка CrootBlocalhost /root]# date —rfc Сет, 3 Ивн 2000 16:49:32 +0300 Crooteiocalhost /root]» date +/Zd/!Zm -d "Jul 5" 05/07 Crooteiocalhost /root]* date +%-d/%-n -d "Jul 5" 5/7 CrootBlocalhost /root]» date +Z_d/% m -d "Jul 5" 5/ 7 CrootBlocalhost /root]» I По умолчанию date заполняет числовые поля пулями и распознаег следующие числовые модификаторы между символом % и числовой диреюивой' - (дефис) не производит заполнения ноля _(подчеркивание) заполняет поле пробелами Примеры Следующие примеры демонстрируют разницу при использовании допустимых модификаторов. В локализованных версиях дату можно получить на языке своей локали. Суперпользователь может устанавливать дату и время. При задании даты в числовом формате применяется строка mmddHHMMyy, где mm - месяц, dd - число, НН - час, ММ - минуты, уу - две последние цифры года. QQ - копирует файл, выполняя указанные преобразования Синтаксис dd [option]— По умолчанию копирует файл стандартного ввода на стандартный вывод, меняя размер блока и выполняя указанные преобразования. Опции if=file Вместо стандартного ввода считывает указанный файл. of=y?/e Вместо стандартного вывода записывает обработанную информацию в указанный файл. ibs=bytes Считывает за раз указанное число байт (устанавливает размер буфера операции чтения). obs=bytes Записывает за раз указанное число байт (устанавливает размер буфера операции записи). bs=bytes Считывает к записывает за раз указанное число байт. Эта опция перекрывает опции ibs и obs. cbs=bytes Конвергирует за раз указанное число бант. counl=hlocks Копирует из входного файла лишь указанное число блоков, не чомия до его конца. skip=block.i Пропускает' перед записью укашниос число блокон входною ф.шла.
II. Команды 177 seek-btocks Пропускает перед копированием указанное число блоков в выходном файле. conv=conversion[,conversion]... Конвертирует файл в соответствии с элементами списка, разделяемыми запятыми. До и после запятой не должны встречаться пробелы. Аргументы conversion MoiyT принимать следующие значения: ascii конвертирует из формата EBCDIC в ASCII ebcdic конвертирует из формата ASCII в EBCDIC block из каждой строки входного файла записывает в выходной количество байт, указываемое опцией cbs, замещая newline пробелом и выполняя заполнение пробелами, если это необходимо unblock замещает завершающие пробелы каждого блока, размер которою указывается опцией cbs, входного файла на newline (символ новой строки) lease конвертируя, меняет прописные буквы на строчные ucase конвертируя, меняет строчные буквы на прописные swab меняет местами байты в каждой паре входных байт; если считывает нечетное число байт, последний байт просто копирует поеггог продолжает обработку после ошибки чтения notrunc не усекает выходной файл sync заполняет завершающими нулевыми байтами каждый входной блок до размера, задаваемого опцией ibs QGDUQlS - отла .чик «айловой системы ext2. Синтаксис debugfs 1-b blocksize][-s superblock][-f cmd_fiIe][-R reqvest]l-V) [ I-w][-c][-i][device]] Программа debugfs может быть использована для проверки и внесения изменений в файловую систему ext2. Аргумент device - специальный файл устройства, содержащего файловую систему (/dev/hdXY). Опции _с Указывает, что файловая система должна быть открыта в аварийном режиме ("только для ч тения"), в начале которого не считываются битовые массивы индексных дескрип торов (см. в лис тннге примера элементы inodc bitmaps) и групп блоков (см. в листинге примера лпеменш block bitmaps). '>ia опция применяется для фаплоии\ систем с с\ше- сгвенными повреждениями.
178 II Команды -i Указываем что устройство представляет файл-обра) ext2, созданный с помощью программы e2imugc. Поскольку такой файл-обра» только содержит сунерблок, дескриптор группы блоков, битовые массивы pai- мещения блоков и индексных дескрипторов файлов, а также таблицу дескрипторов файлов, многие команды интерактивного отладчика debugfs не будут функционировав ь должным образом. -b blocksize Заставляет использовать для файловой системы заданный размер блока вместо определения его фактического размера. -s superblock Вынуждает считывать суперблок данной файловой системы с блока указанного номера superblock вместо принятого по умолчанию. Если задается опция -s, также должна присутствовать опция -Ь. -w Указывает, что файловая система может быть открыта в режиме "чтение-запись"; без этой опции она будет открыта в режиме "только для чтения". -f cmdjile Вынуждает debugfs считывать команды из файла cmdjile и выполнять их; после выполнения этих команд работа debugfs завершается. -R request Вынуждает debugfs выполнить единственную команду request, после чего debugfs завершается. -V Выводит версию debugfs и завершает ее работу. debugfs - интерактивный отладчик, понимающий следующие команды: cat filespec выводит на стандартный вывод дамп содержимого индексного дескриптора filespec cd filespec меняет текущий рабочий каталог на каталог filespec chroot filespec меняет каталог root (суперпользователя) на каталог filespec close закрывает в настоящее время открытую файловую систему clri file очищает содержимое индексного дескриптора файлау?/е dump [-p] filespec outjile выводит в файл outjile содержимое индексного дескриптораfilespec; если задана опция -р, устанавливает владельца, группу и проч> ю связанную с полномочиями информацию файла outjile в соответствии с аналогичной информациейу?/е^рес expanddir filespec расширяет каталог filespec feature [fsjeature][-fsjeature] ... устанавливает или очищает в суперблоке ряд особенностей ^свойс i в) fsjeature файловой системы, после чего распечатывает текущий набор установок findfreeblock [goal], ffb [goal] ищет первый свободный блок, начиная с goal, и расирсчсляс! ею
II. Команды 179 fmdtreeinode [dir[mode]], ffi [dir[mode]] ищет свободный индексный дескршпор и распределяет его; аргумент dir задает дескриптор кагалога, из которого распределяем дескриптор, второй необязательный аргумент mode определяет полномочия нового дескриптора freeb block [count] помечает указанный блок как нераспределяемый; если присутствует необязательный аргумент сони/, отсчитывает заданное количество блоков count, начиная с блока за номером block freei fdespec освобождает заданный дескриптор filespec help печатает список команд fdespec icheck block... печатает список дескрипторов, которые используют один или более блоков block, указываемых в командной строке initfilesys device blocksize создает файловую систему ext2 на устройстве device с размером блока blocksize; при этой инициализации только создаются суперблок и дескрипторы блоков; для полной инициализации всех структур данных следует вызвать mke2fs kill file filespec освобождает дескриптор fdespec и его блоки, но эта операция не удаляет элементов каталога с заданным значением дескриптора led directory меняет текущий рабочий каталог на указанный каталог файловой системы In filespec destjile создает поименованную ссылку destjile на файл filespec logdump [-ac][-b Ыоск][-\ inode] [-f journalJile][outputJiIe] выводит дамп содержимого журнала файловой системы ext3 в указанный файл outputjile Is [-l][-d] filespec печатает список файлов каталога/?/е$рес; флаг -d вынуждает распечатывать удаленные элементы данного каталога modifyinode fdespec, mi filespec модифицирует содержимое структуры дескриптора filespec mkdir filespec создает каталог filespec mknod filespec [p|[[c|b] major minor]] создает специальный файл устройства по имени fdespec, где опция р задает именованный канал, опция с - символьно-специальный файл, b блочно-специальный файл: если требуется создат ь блочно- или символьно-специальный файл, необходимо указа гь major (главный) и minor (до- полнительный) номера устройства
180 II Команды neheck inodcnum берег указанный список значений дескрипторов, mode nam, и печатает список маршрутов к л им файлам open [-vv][-f][-i][-c][-b blocksizc]\-& superblock] device открывает файловую систему на устройстве device для редактирования, флаг -w определяет режим записи; опция -f способствует принудительному открытию файловой системы в том случае, когда существуют ее определенные свойства, препятствующие открытию; опции -с, -b. -i и -s считать такими же, как у самой debugfs printworkingdirectory, pwd распечатывает текущий рабочий каталог quit, q выходит из программы debugfs rdump directory destination рекурсивно направляет дамп каталога directory и все его содержимое (обычные файлы, символические ссылки и другие каталоги) в поименованное место destination, в качестве которого может служить существующий каталог файловой системы rm pathname освобождает связь (ссылку) pathname; подобна системному вызову unlink rmdir filespec удаляет каталог filespec setb block [count] помечает блок за номером block как распределенный; если присутствует необязательный аргумент count, блок за номером count, начиная с блока за номером block, будет помечен как распределенный seti filespec помечает индексный дескриптор filespec как использованный в битовом массиве индексных дескрипторов setsupervalue field value устанавливает поле field, принадлежащее суперблоку, в значение value; список полей суперблока, которые можно установить с помощью рассматриваемой команды, рекомендуется вначале распечатать с помощью команды setsupervalue -I showsuperstats [-h], stats [-h] выводит содержимое суперблока и дескрипторов группы блоков; если задан флаг -h, распечатывает только содержимое суперблока stat filespec печатает содержимое структуры дескриптора filespec testb block [count] проверяет, не отмечен ли в битовом массиве блоков блок за номером block в качестве распределенною; если ирисуговует необязательный аргумент count, отсчитывает count блоков, начиная с блока за номером black testi filespec проверяет, отмечем ли указанный дескриптор как распределенный в битовом массиве индексных дескрипторов
II. Команды 181 unlink pathname удаляет ссылку, «данную в виде маршру га pathname к дескриптору write sourceJile outjile создает в файловой системе файл по имени outjile и копирует в него содержимое файла sourceJile listdeletedinodes, lsdel распечатывает список удаленных индексных дескрипторов dirty filesys. dirly помечает файловую систему как "испорченную" Аргумент filespec может указываться в двух форматах. Первый формат предполагает число, окруженное знаками "меньше" и "больше", например <3>. Второй формат задает маршрут. Если маршрут начинается с прямого слэша, то он интерпретируется относительно каталога root той файловой системы, которая открыта в настоящее время с помощью debugfs. В противном случае - относительно текущего рабочего каталога, установленного debugfs. Примеры Откроем файловую систему на устройстве /dev/hda2, распечатаем суперблок и группы блоков. t debugfs debugfs 1.32 (09-NOV-2002) debugfs: open /dev/hda2 debugfs: stats Filesystem volume name: / Last mounted on: <not available> Filesystem UUID: 0484f002-f13e-45c9-8044-c82a08f55487 Filesystem magic number: 0xEF53 Filesystem revision #: 1 (dynamic) Filesystem features: has_ journal filetype needsrecovery sparse_super large_file Default mount options: (none) Filesystem state: clean Errors behavior: Continue Filesystem OS type: Linux Inode count: 513024 Block count: 1024143 Reserved block count: 51207 Free blocks: 548151 Free inodes: 416869 First block: 0 Block size: 4096 Fragment size: 4096 Blocks per group: 32768 Fragments per group: 32768 Inodes per group: 16032 Inode blocks per group: 501 Filesystem created: Wed Apr 30 17:58:56 2003 Last mount time: Sun Oct 26 23:22:39 2003 Last write time: Sun Oct 26 23:22:39 2003 Mount count: 89
182 И Команды Maximum mount count: -1 Last checked: Wed Apr 30 17:58:56 2003 Check interval: 0 (<none>) Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root) First inode: 11 Inode size: 128 Journal UUID: <none> Journal inode: 8 Journal device: 0x0000 First orphan inode: 197204 Directories: 5785 Group 0: block bitmap at 2, inode bitmap at 3, inode table at 4 10525 free blocks, 14859 free inodes, 254 used directories Group 1: block bitmap at 32770, inode bitmap at 32771, inode table at 32772 14423 free blocks, 12770 free inodes, 275 used directories Group 2: block bitmap at 65536, inode bitmap at 65537, inode table at 65538 31021 free blocks, 8255 free inodes, 25 used directories debugreiserfs - помогает разрешать проблемы, связанные с файловыми системами ReiserFS. Синтаксис debugreiserfs [-dDJqpS][-j device][-b blocknumber] device Вызываемая с разными опциями, распечатывает суперблок, содержимое журнала, форматированные узлы внутреннего дерева файловой системы на устройстве device (обычно в разделе жесткого диска). Опции -j device Печатает содержимое журнала. А вместе с опцией -р разрешает упаковать в архив журнал вместе с другими метаданными. -J Печатает заголовок журнала. -d Печатает форматированные узлы внутреннего дерева файловой системы. -D Печатает форматированные узлы всех использованных блоков файловой системы. -b blocknumber Печатает указанный блок (но номеру) файловой системы. -р Находит метаданные файловой системы. В случае сбоя вы с помощью команды debugreiserfs -p /dcv/.v.v.v | gzip -с > .\xv.gz сможете извлечь метаданные файловой системы, чтобы позже с помощью комаптм guniip -cxxx.gz | unpack fdcv/xxx создать подобную файлов) ю cui-ie му.
II. Команды 183 ■Заставляет опцию -р работать с целым устройством, а не юлько с блоками, помеченными как использованные, в отсута вие опции -S. При использовании опции -р запрещает выводить саму динамику процесса отладки. Пример t debugreiserfs /dev/loopO — debugreiserfs, 2002 > reiserfsprogs 3.6.4 Filesystem state: consistent Reiserfs super block in block 16 on 0x700 of format 3.6 with standard journal Count of blocks on the device: 10000 Number of bitmaps: 1 Blocksize: 4096 Free blocks (count of blocks - used [journal, bitmaps, data, reserved] blocks): 1788 Root block: 8211 Filesystem is cleanly umounted Tree height: 2 Hash function used to sort names: nr5" Objectid map size 2,max 972 Journal parameters: Device [0x0] Magic [0x692dll59] Size 8193 blocks (including 1 for journal header)(first block 18) Max transaction length 1024 blocks Max batch size 900 blocks Max commit age 30 Blocks reserved by journal: 1024 Fs state field: 0x0 sb_version: 2 inode generation number: 0 UUID: efl6d6fe-8778-4665-9677-385caed64b98 Set flags in SB: ATTRIBUTES CLEAN t Имя хэш-функции, по которой будет производиться сортировка имен файлов в каталогах, выбрано по умолчанию (г5). Размер блока в байтах составляет 4096, формат- файловой системы - 3.6 со стандартным журналом. UUID данной файловой системы установлен в значение efl6d6fe-8778-4665-9677-385caed64b98 (см. команду uuidgeiO. Когда журнал расположен на основном устройстве, по умолчанию его размер составляет 8193 блока, что имеет место в нашем случае. d©Cryptdir выполняет дешифрирование всех файлов каталога. Синтаксис decryptdir [dir]
184 II Команды Выполняет дешифрирование всех файлов заданною ка|ал01 a dir или гекуша о каталога, если аргумент dir отсутствуег. При этом пользователь пршлашаегся для ввода пароля; если введен неверный пароль, никакие действия не протводягся. В процессе дешифрирования суффикс .crypt будет удаляться из имен файлов QGprnOO поддерживает описания зависимостей для загружаемых модулей ядра. интаксис depmod -[аА] [-einqsvVr][-С configfile][-Y kernelsyffls][-b basedirectory] [forced_version] depmod [-einqsv][-F kernelsyms] modulel.o module2.o ... ПЦИИ -а Производит поиск модулей во всех каталогах, упомянутых в конфигурационном файле /etc/modules.conf, и выводит результат в depfile, указанный в этом конфигурационном файле. -А Аналогична опции -а. но сначала сравнивает временные метки, проверяя, нуждается ли в обновлении depfile. -е Показывает для каждого модуля все неразрешенные символы (идентификаторы). -I Игнорирует символические версии при построении списка зависимостей. Дело в том, что команды modprobe и insmod не смогут загрузить модули в случае несовпадения версий. -п Записывает файл зависимостей на стандартный вывод вместо записи в дерево /lib/modules. -s Записывает все сообщения об ошибках через демона syslog вместо записи в стандартный файл ошибок. -v Выводит имя каждого обрабатываемого модуля. -q Игнорирует пропущенные символы (идеи гификаторы). -V Выводит версию программы depmod. -г По умолчанию не должен загружаться модуль ядра, владельцем файла которого не является суперпользователь. А поскольку модули ядра часто компилируют непривилегированные пользователи, с помощью этой опции можно разрешить суперпользователю загружать модули, собственником которых он не является. -b basedirectory Параме1р based/rectory сообщает depmod. где следует искать образ дерева /lib/modules.
II. Команды 185 -С configfile Использует configfile вместо файла /etc/modules.con», применяемого по умолчанию. Задать конфигурационный файл можно также с помощью неременной окружения MODULECONK -F kernelsvms Указывает коррекгный набор kernelsyms, используемый для разрешения символов (идентификаторов) по каждому модулю ядра. В качестве такового применяется либо копия System.map другого ядра, либо копия вывода из /proc/ksyms. Обычно строку типа /sbin/depmod -а можно обнаружить в одном из rc-файлов из каталога /etc/red, так что корректные зависимости модулей с гановятся доступными сразу же после загрузки системы. Впрочем, опция -а не является обязательной; в некоторых случаях осознано задают опцию -q. ОТ - выводит количество используемого и доступного К. дискового пространства в файловых системах. Синтаксис df [option]...{file]... Если аргуменгу?/е - файл дискового устройства, содержащий смонтированную файловую систему, то df информирует о пространстве, доступном в этой файловой системе. Без аргументов команда df сообщает о дисковом пространстве, используемом и доступном во всех в настоящее время смон тированных файловых системах вне зависимости от их типов. Обычно размер пространства выводится в виде блоков по 1024 байт. Оп ии -a, —all Включает в листинг файловые системы нулевого размера, так называемые псевдосистемы. —h, —human-readable Добавляет к выводимому размеру соответствующую букву, например М, указывая размер в мегабайтах (1048576 бант) или других единицах. -Н, —si Тоже добавляет к выводимому размеру соответствующую букву, но использует Международную Систему Единиц, где применяются единицы измерения, кратные 1000, а не 1024. -i, —inodes Информирует об индексных дескрипторах вместо привычной информации о блоках. Каждый индексный дескриптор содержит информацию о каком-либо файле: владелец, полномочия, временные метки и расположение на диске. -k, —kilobytes Выводит размер дискового прооранства в вилс блоков но 1024 бант. -1, —local Ограничивает листинг сведениями лишь о локальных файловых системах. По умолчанию информирует также о дистанционных системах. -т, —megabytes Печатает размер п виде блоков по 1 мегабайту (1048576 баи г).
186 II Команды —no-sync He исполыует системный вызов sync, что существенно повышает быс тродейс твие команды df в сие темах с несколькими дисками. От а опция используется но умолчанию. -Р, —portability Осуществляет вывод в формате POSIX. —sync Использует системный вызов sync, что оптимальнее лишь для некоторых файловых систем (SunOS). -ifsivpe, — type= fstype Включает в листинг лишь сведения об указанных типах файловых систем. По умолчанию информирует о всех типах файловых систем. -Т, —print-type Информирует о rune каждой файловой системе. Ниже приведены некоторые типы: nfs любая файловая система, монтируемая через сеть с другой машины 4.2, ufs, efs файловая система на локально-монтируемом жестком диске hsfs, cdfs файловая система на устройстве CD-ROM pefs файловая система MS DOS (обычно на дискете) -у. fstype, — exclude-type= ^s7v/?e Исключает из листинга сведения о файловых системах указанных типов. Пример S df -T Filesystem /dev/hda5 /dev/hdal /dev/fdO $ Type ext2 vfat vfat lk-blocks 1281816 308248 1423 Used Available Use* Mounted on 963452 253252 79% / 278792 29456 90% /fat 1374 49 97% /mnt/floppy dialog позволяет создавать диалоговые окна из сценариев оболочек. Синтаксис dialog —clear dialog —create-rc file dialog —print-maxsize dialog common-options box-options Безусловно, вы можете написать виджст на языке С, исноль )ун, скажем, библиотеки GDK и GTK.+. Такой виджст позволяет выводить разнообразные диалоговые окна. Но с помощью dialog вам многое уже доступно из сценариев оболочек, или комаи i-
II. Команды 187 пых процессоров: с помощью команды размером буквально в одну сгрочку можно вывести несколько гнпов диалоговых окон. пции (с mmon-options) —acpeci ratio Указывает номинальный размер (по умолчанию 9) строки приглашения. —backtitle backtitle Указывает строку заголовка, выводимую наверху экрана, —beep Издает звуковой сигнал всякий раз, когда обновляется экран, —beep-after Издает звуковой сигнал, если прерывается (через Ctrl+C) ввод, —begin i' х Задает положение на экране верхнего левого угла диалогового окна. —clear Очищает экран при выходе. Может использоваться как единственная опция. —cr-wrap Интерпретирует включенные в текст диалогового окна символы newline также, как символы newline на экране, в противном случае текст каждого диалогового окна отображается в виде одной строки. —create-rc file Выводит образец файла конфигурации в указанный файл file, если диалоговое окно поддерживает конфигурацию времени выполнения. —help Печатает сообщение об использовании команды. —defaultno Создает по умолчанию ответ No для диалогового окна типа yes/no. —default-item string Устанавливает пункт меню, принимаемый по умолчанию, в окне. Обычно по умолчанию берется первый пункт меню. --no-kill Говорит dialog, что окно типа tailboxbg (см. опцию диалоговых окон —tailbox) следует поместить в фон, и направляет его идентификатор процесса в стандартный файл ошибок. Для фоновых процессов сигнал S1GHUP невозможен. —no-shadow Запрещает рисовать тени справа и снизу каждого диалогового окна. —nocancel Запрещает применять кнопку Cancel в проверяемых списках, в диалоговых окнах для ввода информации и окнах с меню. В сценариях можно лишь проверять, не нажал ли пользователь клавишу ESC. —print-maxsize Выводит максимальный размер диалоговых окон (размер экрана) в стандартный файл ошибок. Может использоваться как единственная опция. —print-size Выводит максимальный размер каждого диалогового окна в стандартный файл ошибок. —print-version Печатает информацию о версии dialog. Это может быгь единственная опция. —shadow Рисует тень справа и снизу каждого диалогового окна. --size-err Проверяет размер каждою диалогового окна и печатает резучыат, если он больше размера экрана.
188 И Команды —sleep sees После обработ ки окна выполняет укачанную шдержку в секундах -title title Указывает строку заголовка, отображаемую на вершине диалогового окна. Опции диалоговых окон (box-options) —checklist text height width list-height [ tag item status ] ... Это окно с размерами height (высота) и width (ширина) и со строкой комментария text подобно окну с меню: многочисленные элементы, каждый из которых может быть включен или выключен (status соответственно принимает значение on/off) пользователем, представлены в форме меню, высота которого list-height. При выходе будет распечатан список тэгов (tag) возвращаемых элементов. —gauge text height width percent Вдоль низа окна отображается индикатор (строка состояния) с процентами. Новые значения процентов считываются со стандартного ввода [Ю одному в строке. Индикатор обновляется всякий раз. —infobox text height width Окно с сообщением для пользователя, после вывода которого dialog будет сразу завершена, хотя сообщение остается на экране. —inputbox text height width [init] Окно ввода полезно, когда вы хотите задать вопрос и ожидаете, чтобы пользователь ввел строку ответа. Корректировать введенную строку можно с помощью клавиши BACKSPACE. Параметр init позволяет инициализировать входную строку. —menu text height width menu-height [ tag item ] ... Это окно размером heighlxwidlh предлагает меню высотой menu-height с возможностью выбора его пункта item с заданным тэгом tag. —msgbox text height width Окно для вывода сообщений с единственной кнопкой ОК, а в остальном очень напоминает окно типа yes/no. —passwordbox text height width [init] Подобно окну для ввода, но вводимый пользователем текст не отображается на экране (полезно для ввода паролей). —radiolist text height width list-height [ tag item status ] ... Похоже на окно с меню, но вы можете указать свой текущий выбор, установив его статус па on. —tailbox/i/e height width В этом диалоговом окне отображается текст из файла file, как по команде tail -f. —textbox file height width В этом диалоговом окне отображается текст из файла file. Полыова- гель может перемещаться по содержимому файла с помощью клавиш UP/DOWN, PGUP/PGDN и IIOIMI'71'NI) Кпанпши l.Kl-Г/RlGlll'no- шоляю! прокручивать длинные с i роки по lopiiioiuiuili.
II. Команды 189 -textboxbg file height width В пом диалоговом окне оюбражастси ickci нз файла file, как по команде tail -f & (в фоне). -yesno text height width Диалоговое окно тина yes/no размером heightxwidth со строкой текста внутри. Такое окно полезно, если требуется задать вопросы с предполагаемым ответом riiiia yes/no (да/neij. Пример $ dianlog —radiolist "my box" 25 25 10 1 change off 2 skip on 3 delete off jg'root@sofia/root П X File Edit Settings Help "ma box' ( ) l change (X) 2 skip ( ) 3 delete < К ХСалсв1> diff сравнивает содержимое двух файлов. К Синтаксис diff [option] from-file to-file В простейшем случае срав.пшаег содержимое if-млочfrom-fik и to-file. Craiujpi- ный файл ввода обычно обозначается дефисом. Если from-file яиляегся каталогом, а to-file - нет команда cliff попыгаегся oiискать в качало.с /rom-file и з.пем HC.uvib.o-
190 II Команды вагь для сравнения файл с именем to-file. И наоборо!, если to-file являйся каталогом, a fivm-file - нет, dil'f будет производить сравнение анало1Ичным образом. Ъспи/гот- file u to-file - каталоги, команда difT производит сравнение в алфавитом порядке coot ветствующих файлов из этих каталогов. Особо следует сказать о символах "white space", к этому классу относятся символы горизонтальной и вертикальной табуляции, новой строки, перевода (протона) страницы, возврата каретки и пробелов. Оп ии -лит Отображает пит (целое число) строк контекста. Используется совместно с опциями -с и -и. -a, —text Рассматривает сравниваемые файлы как текстовые, даже если они таковыми не являются, и производит построчное сравнение. -b, —ignore-space-change Игнорирует символы "white space" в конце строки и считает все последовательности, состоящие из одного или более таких символов, эквивалентными. -w, — ignore-all-space Эта опция игнорирует разницу, даже если один из файлов содержит "white space" там, где другой вовсе не содержит. -В, -ignore-blank-lines При нахождении отличий игнорирует пустые строки в файлах. Эта опция действует лишь в том случае, если строки действительно пустые, а не выглядят таковыми, хотя содержат символы пробелов или табуляции. -i, — ignore-case Игнорирует регистр букв. -I regexp, — ignore-matching-lines=regeA7> Игнорирует строки, содержащие заданный шаблон regexp. В качестве шаблона обычно указывается регулярное выражение. -q, —brief Иногда важно знать, разнятся ли файлы, а смысл различий не столь существенен. В этом случае используют опцию -q. -у, —side-by-side Осуществляет вывод в два столбца. -е, — ed Создает сценарий редактора ed, преобразующий файл fivm-file в файл to-file. -f, —forward-ed Создает сценарий, подобный сценарию редактора ed. но о гражая изменения п порядке их появлений в файле. -n, —res Создает сценарий в формате RCS, преобразующий ^aw\from-filf в файл to-file. Очень напоминает формат, создаваемый с помощью опции -f. -W columns, —w\dlh=colnmns Параметр columns указывает количество символов в строке вывода, по умолчанию принято 130. —left-column Печатает только левый столбец двух общих строк.
II. Команды 191 —suppi ess-common-lines He выводит обших строк. -1, —paginate Осуществляет постраничный вывод с помощью команды рг. -I, —expand-labs Заменяет в выводе символы табуляции на пробелы. -Т. —initial-tab Beгавляет символы табуляции в начало выводимых строк -s, —reporl-identical-files Сообщает, когда два файла одинаковы, -г,—recursive Рекурсивно сравнивает файлы в подкаталогах. -N, —new-file Рассматривает отсутствующие файлы как пустые. -Р, —unidirectional-new-file При сравнении каталогов, если файл появился только в одном каталоге полагает его пустым. -S file, — starting-file=^i/e При сравнении содержимого каталогов начинает с файла/?/е. -d, —minimal Пытается найти наименьший набор отличий. Программа работает по другому алгоритму сравнения, что существенно замедляет ее работу. -Н, — speed-large-files Ускоряет обработку больших файлов с многочисленными мелкими различиями. -х pattern, --exc\ude=pattern При сравнении каталогов игнорирует файлы и подкаталоги, чьи имена совпали с шаблоном pattern. -XJile, —exclude-from^/i'/e При сравнении каталогов игнорирует файлы и подкаталоги, чьи имена совпали с любым из шаблонов, приведенных в файле///е. -и, -U тип, — unified[=num] Выводит пит строк унифицированного контекста. -с, -С тип, —context[=n«m] Параметр пит определяет количество контекстных строк, выводимых при обнаружении отличий. Если пит отсутствует, выводятся три строки. Для команды patch требуется как минимум две строки контекста. -р, —show-c-function Показывает изменения в функциях языка С. -v, —version Выводит информацию о версии программы. —help Печатает подсказку. Примеры Распечатаем содержимое файлов probal и proba2: S cat probal sss ddd
192 II Команды vvv пишп cccl $ cat proba2 sss ddd fff пишп ccc2 S А теперь сравним содержимое файлов probal и proba2, используя опции -f. -п. -е. Сценарии, полученные с помощью опций -f и -е, очень похожи, но корректировка содержимого файла probal в сценарии редактора ed как бы производится в обратном порядке. В сценарии корректировки, созданном с помощью опции -п, явно указано число удаляемых и добавляемых строк. - производит сравнение трех файлов. интак с diff3 [option] mine older yours Предположим, существовал оригинальный файл older, в который были внесены изменения пользователем (вариант mine) и его другом (вариант yours). Собственно для регистрации таких изменений и предназначена команда diff3. Если вместо имени одного из файлов находится дефис, для сравнения используется стандартный ввод. В листинге команды dift3 (no умолчанию без опций) можно встретить следующие обозначения: ==== все три файла различаются ==== 1 первый файл (mine) отличается от двух других ====2 второй файл (older) отличается от двух других ====3 третий файл (yours) отличается от двух других н вные оп ии -а, —text Рассмафииает сравниваемые файлы как текстовые, даже если они таковыми не являются, и прошиоднт построчное сравнение. -A, —show-all Создает сценарий редактора «1, включающий нее отличия or найденных в файле older и до найденных н yours в файл mine, отмечая все конфликтные места (скобки). = lootOlocalhost Irjceldorneun: /root Файл Правка Settings Справка [rootQlocalhost /root]* diff -f probal proba2 c3 fff c5 ccc2 [rootGlocalhost /root]* diff -n probal proba2 d3 1 a3 1 fff d5 1 a5 1 ccc2 [rootQlocalhost /root]* diff -e probal proba2 5c ccc2 3c fff [rootGlocalhost /root]*
II. Команды 193 -е, --ed Создает сценарий редактора cd, включающий необъединяемые отличия от найденных в файле older и до найденных ayours в файл mine. -Е, --show-overlap Аналогична опции -е, но в сценарии будут помечены все конфликты. -х, —overlap-only Аналогична опции -е, но выводит только перекрывающиеся различия. -X Аналогична опции -х, но помечает конфликты (скобки) подобно опции -Е. -3, —easy-only Подобна опции -е, но выводит только неперекрывающиеся различия. -i Добавляет команды w (сохранить) и q (выйти) а конец сценария редактора ed. -m,—merge Применяет сценарий редактирования к первому файлу (mine) и посылает результат на стандартный вывод. -Т, —initial-tab Выводит в начало строки символ табуляции вместо двух пробелоа. -v, --version Выводит информацию о версии программы, —help Печатает подсказку по опциям. -L label, -\abe\=label Использует метку label вместо имен исходных файлов, отмечая различия . Эта опция может быть применена трижды: соответстаенно для каждого исходного файла. Используется эта опция вместе с опциями -А, -Е, -X. Пример Распечатаем файл ргоЬаЗ, который понадобится аместе с файлами probal и proba2 (см. diff): $ cat ргоЬаЗ sss ddd fff сссЗ $ А теперь сравним три упомянутых файла: $ diff3 proba2 probal ргоЬаЗ 1:3с 3:3с fff 2:3с VVV 1:5с ссс2 2:5с cccl 3:5с сссЗ $
194 II Команды Oip программа поддержки IP-подключений по телефонным каналам. Синтакси dip [-v][-m л£и][-р proto} scriptfile dip -t |-v] dip -i l-a][-v] diplogin [username] diplogini dip [-v] -k [-1 tty_line] Протоколы SLIP и РРР обеспечивают подключение к Internet через недорогие каналы последовательной передачи данных. Последовательная связь проста в обращении, и все большее количество организаций подключается к Internet через телефонные линии. Существует специальное программное средство, позволяющее автоматизировать такие подключения. Это программа dip. Она может поддерживать аходящие и исходящие подключения, используя пароль безопасности для входящих. Первый формат команды интерпретирует сценарий дозвона scriptfile и открывает IP-соединение. Опция -t запускает dip интерактивно. Команда dip -i поддерживает входящие подключения; diplogin эквивалентна команде dip -i, a diplogini - команде dip -i -а. Команда dip -k "убивает" существующий dip-процесс, закрывая соединение. Опции -а Приглашает ввести имя пользователя и пароль. -i Действует как сервер, обрабатывающий входящие подключения. -к "Убивает" dip-процесс, работающий на заданном устройстве tlyjine (см. опцию -1). -1 Ity line Указывает линию tty_line, которая должна быть "убита". Эта опция обязательна, если задана опция -к. -m mtu Устанавливает максимальный размер передаваемого кадра. По умолчанию равен 296 байт. -р proto Устанавливает протокол proto последовательной линии. Параметр proto может принимать одно из следующих значений". SLIP. CSLIP, РРР или TERM. -t Запускает dip в режиме тестирования. -v Устанавливает режим подробного документирования. Предлагает различные отладочные распечатки, включая аывод каждой строки сценария программы chat (см. chat). Одно из возможных использований dip - в качестве inrrcpaici limioii программы дня установки исходящих 1Р-еосдинеиий. Этою можно достичь, вышли dip с опцией -t. Пользователю предлагается приглашение нршраммы 1>11'>.
II. Команды 195 Второй путь использоиання dip инициировать исходящие подключения. Чтобы облегчи гь работу пользователей в этом случае, dip использует сценарий программы chat для установки связи с дистанционной сис1емой. Единственным аргументом команды dip является маршруг к месту нахождения сценария scriptfile. Если имя файла сценария не содержит никакого расширения, программа dip автоматически добавит суффикс .dip. Третий возможный путь использования dip - в качестве оболочки регистрации для входящих IP-подключений, используя SLIP и РРР на телефонных линиях. Для упрощения интеграции с существующими Unix-системами dip может быть легко инсталлирована путем вызова по имени, определенному в файле /etc/passwd. Образец элемента файла может выглядеть примерно гак: При регистрации пользователя программа login устанавливает его исходный подкаталог в каталоге /trap и обращается к программе diplogin. Последняя является символической ссылкой и запускает программу dip для входящих подключений. Программа dip обязательно просматривает файл /etc/diphosts в поисках элемента, соответствующего имени пользователя. Строки этого файла напоминают строки стандартного файла паролей. Любая строка, начинающаяся с символа #, является комментарием. Обычно каждая строка содержит семь полей, разделенных двоеточиями. Первое поле содержит имя пользователя. Второе поле содержит пароль пользователя. Имя, или IP-адрес дистанционного узла, содержится в третьем поле, аналогично имя, или IP-адрес локального узла, - в четвертом. Сетевая маска в десятичной нотации содержится в пятом поле. Шестое - вообще не используется программой dip. В седьмом поле содержится один из флагов, отделенный запятой от параметра MTU (по умолчанию 296). Возможные значения флагов такоаы: SLIP, CSLIP, РРР. Ниже перечислены основные команды dip. Основные команды label: Определяет метку. beep [times] Создает звуковой сигнал на терминале пользователя указанное параметром times количество раз. break Посылает сигнал прерывания. chatkey keyword [value] Добавляет слова ответа к существующему для модема набору. config [interface|routing][pre|up|down|post]{a/£wnien«...( Хранит параметры конфигурирования интерфейса. databits 7|8 Устанавливает количество используемых бит в значение 7 или 8. default В процессе подключения использует маршрут к дистанционном) узлу. задаваемый по умолчанию. dial phonenumber [timeout] Набирает указанный телефонный ишсрр/юпеттФег. Допускаемое значение тайм-аута при подключении определяется параметром птеош. По умолчанию timeout устанавливается в 60 секунд. Программа dip
196 И Команды анализирует возвращаемую модемом строку и устанавливает следующие стандартные коды завершения: 0 ОК (все в порядке) 1 CONNECT (подключение) 2 ERROR (ошибка) 3 BUSY (телефонная линия занята) 4 NO CARRIER (отсутствует абонент) 5 NO DIALTONE (нет гудков) С помощью команды chatkey можно добавлять и менять эти коды. echo on|off Включает или отключает вывод модемных команд, flush Сбрасывает все введенное с терминала. get Svariable [vaItie\ask\remote[timeovl_vahie\$variabIe]\ Получает или запрашивает значение переменной Svariable. Если вторым параметром является ask, выпечатывается приглашение и значение переменной будет считываться со стандартного ввода; если этим параметром является remote, значение переменной поступает с дистанционной машины. В противном случае второй параметр является либо константой, либо переменной, значение которой определяет value. help Распечатывает список команд программы dip. init init-string Определяет строку инициализации, посылаемую модему до звонка; по умолчанию принята следующая строка: АТЕО Q0 VI XI mode SLIP|CSLIP|PPP|TERM Задает используемый протокол; по умолчанию принят SLIP. modem modem-name Устанавливает тип модема; по умолчанию — HAYES. netmask xxx.xxx.xxx.xxx Указывает используемую сетевую маску. parity E|0|N Устанавливает тип паритета: проверка на четность, нечетность или отсутствие проверки. password Приглашает вводить пароль и передает его. print Svariable Печатает содержимое переменной Svariable. port tlyname Устанавливает имя используемого терминального порта, предполагается маршрут /dev/. quit Завершается с ненулевым кодом. reset Переустанавливает модем, посылая +++ и затем ATZ (команды модема).
II. Команды 197 shell command [parameters] Выполняет команду command в оболочке, заданной но умолчанию, с параметрами parameters, передаваемыми а командной строке. sleep time-in-secs Ожидает в течение периода, определяемого параметром time-in-secs (время задается в секундах). speed bits-per-sec Задает скорость передачи информации (по умолчанию 38400) через порт. stopbits 112 Устанавливает число стоповых бит. timeout time-in-sec Задает время тайм-аута, или время отсутствия активности линии, в секундах. По концу периода dip прервет подключение и завершит свою работу. Ниже приведен перечень используемых переменных: Serrlvl результат выполнения предшествующей команды Slocip IP-адрес локального узла в десятично-точечной нотации Slocal полное имя локального узла Srmtip IP-адрес дистанционного узла в десятично-точечной нотации Sremote полное имя дистанционного узла Smtu MTU, максимальное число байт, передаваемое за один раз Smodem тип модема (пока задается только единственное значение - HAYES) Sport имя используемого терминального порта (предполагается маршрут/dev) Sspeed скорость передачи информации (бит/сек) между локальным узлом и модемом display - выводит изображение на любой экран рабочей станции под Х-сервеюм. Синтаксис display [options...]filel[options...]file—] display - машинно-независимый процессор изображении, работающий со многими из наиболее популярных графических форматов. Благодаря display мы можем загружать изображение из файла и записывать изображение в файл, отображач ь предшеств> - ющие и последующие изображения, выводить последовательность изображений как слайд, копировать и склеивать области изображений, менять размер, вырезать и вращать изображение. Вы гакже можете инвертировать цвета изображения, варьировать яркость и насыщенность цвета, ныполня гь rucroi раммное выравнивание и нормализацию изображения, редактировать цвет пиксела и делать многое другое.
198 II Команды вые on 'ии -backdrop color Цен ipupycr изображение на "заднике", покрывающем весь экран рабо чей станции. -background color Указывает цвет фона. -border widthxheight Окружает изображение цветной рамкой, используя геометрическую спецификацию (см. X). -bordercolor color Указывает цвет рамки. См. в X описание форматов используемых цветов. -borderwidth geometry Задает ширину рамки. -cache threshold Подстраивает пороговое значение памяти (мегабайты), доступное видеокэшу. Пока не будет задействовано 80 Мбайт памяти, пикселы изображения хранятся в памяти. Последующие операции с пикселами переносятся на диск. Если ваш компьютер не имеет достаточного количества оперативной памяти, вы, возможно, захотите подстроить это значение. -colormap type Устанавливает тип карты цветности. Если вы выбираете shared (по умолчанию), изображение разделяет (совместно использует) цвет с другими Х-клиентами. Если вы выбираете private, возникают точно такие цвета, как были определены. -colors value Задает предполагаемое количество цветов для изображения (опция ограничения числа цветов). -colorspace type Устанавливает альтернативный тип цветового заполнения. На выбор предоставляются следующие типы: GRAY, OHTA, RGB, Transparent, XYZ, YCbCr, Y1Q, YPbPr, YUV или CMYK. По умолчанию ограничение цветности имеет место в цветовом заполнении RGB. Эта опция требует опцию -colors или опцию -monochrome. -comment string Назначает для изображения указанную строку комментария. -compress type Указываеттип сжатия изображения: None, BZip, Fax, Group4, JPEG, L/W. RunlengthEncoded или Zip. Эта опция обычно используется нмесге с опцией -write. Для сохранения двоичного изображения без сжашя вы должны указать опцию +compress. -contrast Усиливает или снижает (+contrast) контрастность изображения. -crop widthxheight{+-\x offset{+-}у offset(%( Устанавливает предпочтигельный размер и расположение усеченного изображения (сохранение сю части н удаление ос пики), исно.иы\« гео-
II. Команды 199 метрическую спецификацию (см. X). Здесь width и height указывают размер оставшегося изображения, а смещения xoffset и y_offset - положение верхнего левого угла усеченного изображения относитезь- но оригинального изображения. Вы можете указагь ширину или высоту в процентах, добавив %. -delay value Выводит после паузы следующее изображение последовательности. Аргумент value - это число сотых долей (1/100) секунды. Максимальная задержка достигает 65535. По умолчанию вывод осуществляется без задержки. -density widthxheight Задает горизонтальное и вертикальное разрешение в пикселах. Эта опция указывает разрешение изображения, когда выполняется дешифрирование страницы PostScript или переносимого документа. По умолчанию принято значение, составляющее 72 пиксела на дюйм в горизонтальном и вертикальном направлениях. Эта опция должна согласоваться с опцией -page. -despeckle Уменьшает зернистость изображения. -display host:disp!ay[.screen] Указывает Х-сервер для контакта (см. X). -dispose method Определяет метод диспозиции (расположения) для GIF-изображения: 0 расположение не указано 1 не располагает между кадрами 2 перекрывает кадр фоновым цветом из заголовка 3 перекрывает предшествующим кадром -dither Использует диффузию (рассеиаание) ошибки по Флойду/Штейнбергу (Floyd/Steinberg), улучшающую изображения, которые страдают от сжатия палитры. Эта опция требует опцию -colors или -monochrome. Базовая стратегия рассеивания состоит в том, чтобы создать пространственное разрешение путем усреднения интенсивностей нескольких соседних пикселов. -edge radius Обнаруживает контуры изображения внутри заданного радиуса. -enhance Применяет цифровой фильтр для улучшения качества зашумленного изображения. -filter type Указывает тип фильтра для изменения размера изображения: Point, Box, Triangle, Hermite, Manning, Hamming, Blackman, Gaussian, Quadratic, Cubic, Catrom, Mitchell, Lanczos (no умолчанию), Bessel, Sine. -flip По щелчку создает зеркальное изображение в вертикальном направлении. -Пор Создаст зеркальное изображение в горизчнталыюм направлении.
200 II Команды -foreground color Определяет цвет переднего плана. См. в X описание форматов используемых цвегов. -frame widthxheight+outerbevelwidth+innerbevelwidlh Окружает изображение декоративной границей. Вы можеге выпочиить скошенное соединение (на скос), рисуя прямую линию между концами двух линий. Цвет границы указывается с помощью опции -mattecolor. -gamma value Устанавливает уровень гамма-коррекции (or 0.8 до 2.3), позволяющей подстроить изображения на мониторах разных рабочих станций. -geometry widthx.height{+-}x offset{+-}y_offset{%} {!} {<} {>} Устанавливает предпочтительный размер или расположение окна изображения при кодировании. По умолчанию во время изменения размера пытается сохранять формат изображения (соотношение ширины и высоты). Чтобы вынудить изображение принять некий определенный размер, добавьте в конце восклицательный знак. Вы можете указать процент ширины (или высоты), добавив %, и изменить размеры с помощью <>. Символ > меняет размер изображения только в том случае, если его ширина или высота превышают геометрическую спецификацию. Символ < меняет размер изображения только в том случае, если его ширина и высота меньше, чем геометрическая спецификация. Символ @ указывает максимальную область изображения в пикселах. -iconGeometry geometry Определяет геометрию пиктограммы (вместе со смещениями) в обычном для XII стиле. -iconic Анимирует пиктограмму. -immutable Запрещает модифицировать отображаемое изображение. -interlace type Указывает тип чередования (поочередного сканирования линий) для низкоуровневых форматов изображения (RGB или YUV): None (RGBRGBRGBRGBRGBRGB...) по умолчанию Line (RRR...GGG...BBB...RRR...GGG...BBB...) Plane (RRRRRR...GGGGGG...BBBBBB...) Partition как Plane, но разные битовые плоскости (матрицы, образованные совокупностью одноименных битов всех пикселов) сохраняются в разных файлах: image.R, image.G, image.B -label name Назначает изображению указанную метку, -magnify factor Увеличивает данное изображение, здесь^ас/ог-это коэффициент. -map type Выбирает набор цветов из следующих стандартных типов отображения: best red default green gray blue
II. Команды 201 -matte Сохраняет матовый (светонепроницаемый) канал, если и юбражение его имее г, в противном случае создает непрозрачный канал -mattecolor color Указывает цвет, используемый с опцией -frame. -monochrome Трансформирует данное изображение в монохромное (черный и белый цвета). -negate Заменяет каждый пиксел его дополнительным цветом: белый становится черным, желтый - голубым и т.д. Для серой палитры используется опция +negate. -page widthxheight{+-}x_offset{+-}y_offset{%] {!}{<} {>} Устанавливает предпочтительный размер и расположение канвы изображения. Опция -page похожа на -geometry. Вы можете использовать эту опцию, чтобы указать размеры страницы PostScript в точках на дюйм. Предоставляется следующий выбор: 11x17 Ledger Legal Letter 792 1224 612 612 LetterSmall 612 ArchE ArchD ArchC ArchB ArchA АО Al A2 A3 A4 A4Small A5 A6 A7 2592 1728 1296 864 648 2380 1684 1190 842 595 595 421 297 210 1224 792 1008 792 792 3456 2592 1728 1296 864 3368 2380 1684 1190 842 842 595 421 297 A8 A9 A10 BO Bl B2 B3 B4 B5 CO CI C2 C3 C4 C5 C6 Flsa Flse 148 105 74 2836 2004 1418 1002 709 501 2600 1837 1298 918 649 459 323 612 612 HalfLetter 396 210 148 105 4008 2836 2004 1418 1002 709 3677 2600 1837 1298 918 649 459 936 936 612 Вы можете использовать эту опцию, чтобы указать размер страницы для изображения TEXT в пикселах. По умолчанию принят размер 612x792 Эта опция используется с опцией -density. -quality value Устанавливает уровень сжатия для изображений формата JPEG/MIFF/ PNG. Для изображения в формате JPEG аргумент value меняется от 0 до 100. По умолчанию принято 75. -raise widlhxheight Создает трехмерный (3-D) эффект, освещая или затемняя края изображения. См. опцию -geometry, но смещения здесь не исполы>югся.
202 И Команды -remote Выполняет дистанционную операцию. В но время распотается единственная команда: загрузка поименованного файла с изображением -roll {+- }x_qffset{+- }y offset Прокручивает изображение вертикально или горизонтально. Отрицательное значение х offset прокручивает изображение слева направо, отрицательное значение yoffset прокручивает изображение сверху вниз. -rotate degrees{<}{>} Поворачивает изображение вращением Паеса (Paeth). Знак > вращает изображение только в том случае, если его ширина превышает высоту; знак < вращает изображение только в том случае, если его ширина меньше высоты. -sample geometry Масштабирует изображение путем дискретизации пикселов (преобразования пикселов в последовательность чисел). Формат спецификации geometry стандартный. Данная опция игнорирует любые выбранные с помощью опции -filter фильтры, а также смещения в строке geometry. -scenes value-value Указывает номера читаемых изображений. Каждое изображение диапазона считываете» согласно задаваемому имени файла, в котором поспе точки присутствует номер. -sharpen radiusxsigma Усиливает резкость данного изображения, используя гауссов оператор с заданным радиусом и стандартным отклонением. -size widthxheight{+offset} Указывает ширину и высоту низкоуровневых изображений (GRAY. RGB или CMYK) и позволяет пропустить любую информацию из заголовка изображения или сообщить количество цветов в таблице отображения. -texture filename Указывает имя файла текстуры, используемой для покрытия фона. -title string Назначает указанный заголовок окну с изображением. -treedepth value Указывает глубину цвета (целое значение, обычно 0 или 1) для сохраняемого дерева. Позволяет задать алгоритм ограничения цветов. Оптимальная глубина обычно позволяет наилучшим образом и как можно быстрее представить изображение, расходуя при этом минимум памяти. -update seconds Обнаруживает, что входной файл был изменен (спустя заданное количество секунд), и соответственно обновляет изображение. -verbose Печатает подробную информацию об изображении: номер сцены, имена изображения и преобразованного изображения, размер и г.п.
II. Команды 203 -visual type Аиимирует изображения, выбранные из следующих визуальных классов: StaticGray GrayScale StaticColor PseudoColor TrueCoIor DirectColor default visual id Х-сервер должен поддерживать выбранную вами визуализацию. -window id Выполняет изображение фона, задаваемого по имени или идентификатору окна. Для к/задайте значение root, если в качестве целевого хотите указать корневое окно X. -write filename Записывает изображение в файл. Примеры Создадим эффект объема (3D) с помощью такой команды: $ display -raise 12x12 ooo.gif гогт lo alhost:- ImageMagick: ooo.gif л^«*.«»^а!№ hda5 Rabl iot3.gif Rabl tise 12x12 ooo.gif ■' Tue Nov 11 12:SS AM Достаточно щелкнуть на показанном с помощью команды display изображении и возникает главное меню ImageMagick, из которого можно запустить десятки команд, аналогичных перечисленным опциям. Выбрав View -> Half Sue. получаем в левом верхнем углу поверх основного изображения его уменьшенную (в два раза но вертикали и горизонтали) копию.
204 И Команды V imageMagtck. datcconHq.gH 1mf**»p*iM <|±>П I <А.иЛ <& f^\ '£>f i ,,ri ■ £^3 ***. Network Тиле Protocol Ваш компьютер может синхронизировать свои сервером, на котором работает служба NTP (М Q разрешить Network Time Protocol Сервер: I V Commands Imc^c Ti эемя : 16 23:05 1асы : 16 71' «ты : 20 Half Size Effects _J Original Size ~ Double Size =: Resize... 1 APPly , Refresh ~ Restore Image Edit «^ b<3 ЛечШИ Hbroot<[ (_Jdate< Pan Icoi XJ Tue Nov 11 12:33 AM dist - ne есылает сообщение по 10полнительным адр см. Синтаксис dist l+folder] [msg] [-annotate] [-noannotate] [-inplace] [-noinplace] [-form formfile] [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder][-editor editor] [-noedit] [-whatnowproc program] [-nowhatnowproc] [-version] [-help] Команда dist подобна fonv. Она готовит указанное сообшение для рассылки по адресам, возможно, отсутствующим в списке допустимых адресов. Опции -form formfile Если в пользовательском каталоге nmh существует файл distcomps, он будет использован по умолчанию в качестве формы сообщения. С помощью этой опции можно указать альтернативный файл formfile. +folder Параметр folder определяет панку с сообщением. По умолчанию устанавливается текущая папка. msg Определяет имя файла, содержащего рассылаемое сообщение: no \ молчанию-cur. -draftfolder +folder Создает предварительное сообщение в укачанной панке /older.
И. Команды -draftmessage msg Использует указанное предвари гельное сообщение msg для создания текущего сообщения. Если эта опция не используется, создав! новое предварительное сообщение. -editor editor Указывает редактор editor, используемый для предварительного редактирования. -noedil He выполняет редактирование сообщения. -annotate Рассылает сообщение со следующими строками: Resent:date Resent:addrs Здесь addrs - список адресов, содержащий столько строк, сколько требуется. Такая аннотация будет включаться в сообщение лишь в том случае, если оно напрямую отправляется от команды dist. Если сообщение немедленно не отправляется от dist, для редактирования и последующей отправки созданного сообщения может быть использована команда comp -use. Но в этом случае аннотация в сообщение не включается. -inplace Обычно создает аннотацию на том же месте, чтобы сохранить любые ссылки на это сообщение. -noinplace Отменяет действие опции -inplace. -whatnowproc program После редактирования программа dist вызывает программу program, задающую вопросы "What now? (Что сейчас делать?)". Если program установлен в значение whatnow, программа dist использует встроенную программу, задающую вопросы. Если вы определили собственную программу типа whatnow, не следует ее запускать, программа dist это сделает сама. -nowhatnowproc Не только запрещает вызов программы типа whatnow, но и отменяет редактирование сообщения. Ранее dist использовала headers (заголовки) формата Distribute-.vxv: вместо Resent-xxi:. И лишь для согласованности со стандартом ARPA Internet - RFC-822 - стал применяться формат Resent-jet.*:, хотя dist распознает старый формат и автоматически конвертирует его в новый. Пользовательский профиль имеет имя типа SHOME/.mh_profile. Ниже перечислены его основные компоненты: Path: определяет пользовательский каталог для nmh (xnili) Current-Folder: текущая папка по умолчанию Draft-Folder: папка с предварительным сообщением, также берется по умолчанию Editor: перекрывает редактор, вызываемый по умолчанию fileproc программа перерегистрации сообщения whatnowproc: профамма, задающая вопросы "What now? (Что сейчас делпгь?)"
206 II Команды dmesg распечатывает сообщения, которые появлялись в процессе начальной заг» зки. нт.ксис dmesg [-c][-n level] [-s jbufsize] Очень полезная команда, чтобы увидеть, как Linux распознавал устройства во время загрузки, и получить некоторую диагностическую информацию, выводимую драйверами. Оп ии -с Очищает содержимое буфера после печати. -s bufsxze Использует буфер указанного размера для запроса буфера ядра. По умолчанию - 16392. Если требуется установить буфер ядра большего размера, чем принятый по умолчанию, может быть использована эта опция. -n level Устанавливает уровень выходных сообщений на консоль. Скажем, -п 1 запрещает вывод на консоль всех сообщений кроме явно тревожных. Пример # dmesg Linux version 2.4.20-8 (bhcompile@stripples.devel.redhat.com) (gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5)) #1 Thu Mar 13 16:42:56 EST 2003 BIOS-provided physical RAM map: BIOS-e820: 0000000000000000 - 00000000000a0000 (usable) BIOS-e820: OOOOOOOOOOOfOOOO - 0000000000100000 (reserved) BIOS-e820: 0000000000100000 - 0000000008000000 (usable) BIOS-e820: OOOOOOOOffff0000 - 0000000100000000 (reserved) 128ИВ LOWMEM available. On node 0 totalpages: 32768 zone(0): 4096 pages. Console: colour VGA+ 80x25 Calibrating delay loop... 266.24 BogoMIPS Memory: 125104k/131072k available (1221k kernel code, 4560k reserved. Partition check: hda: hdal hda2 hda3 hda4 < hda5 > ide-floppy driver 0.99.newide HET4: Linux TCP/IP 1.0 for HET4.0 IP Protocols: ICMP, UDP, TCP, IGMP VFS: Mounted root (ext2 filesystem). Journalled Block Device driver loaded kjournald starting. Commit interval 5 seconds ЕХТЗ-fs: mounted filesystem with ordered data mode.
II. Команды 207 Freeing unused kernel memory: 116k freed usb.c: registered new driver usbdevfs usb.c: registered new-driver hub usb-ohci.c: USB OHCI at membase 0xc8844000, IRQ 11 usb-ohci.c: usb-00:0b.0, OPTi Inc. 82С861 usb.c: new USB bus registered, assigned bus number 1 hub.c: USB hub found hub.c: 2 ports detected hub.c: new USB device 00:0b.0-2, assigned address 2 usb.c: USB device 2 (vend/prod 0x46d/0xc00e) is not claimed by any mice: PS/2 mouse device common for all mice EXT3 FS 2.4-0.9.19, 19 August 2002 on ide0(3,2), internal journal divert: allocating divertblk for ethO ethO: RealТек RTL8139 Fast Ethernet at 0xc8891000, 00:40:f4:6a:al:9a, IRQ 10 ethO: Identified 8139 chip type 'RTL-8139C' iptables: (C) 2000-2002 Ketfilter core team ethO: Setting half-duplex based on auto-negotiated partner ability 0000. parportO: PC-style at 0x378 [PCSPP.TRISTATE,EPP1 lpO: using parportO (polling). lpO: console ready Если возникли какие-либо проблемы с платой Ethernet, внимательно проанализируйте сообщения с тегом ethO:. Хотя подобным образом следует рассмотреть все секции. dnsdomainname - выводит для текущего узла доменное имя DNS. Синтаксис dnsdomainname [-v] По сути, эта команда ничто иное, как hostname -d. Опции _v Указывает подробный формат вывода, сообщающий об используемых системных вызовах. Приме > a|root@sofia:/root r_i;cvx File Edit Settings Help [rootQsofia /root]* dnsdomainname -v gethostnaroeC)='sofia* Resolving "sofia' ... Result: hjwie='sofia' Result: h_aliases=~localhost.localdom«in' Result: h_aliases='localhost' Result: h_addr_list='127.0.0.1' [rootQsofia /root]* I л ]
208 II Команды domainname устанавливает для текущего узла доменное имя службы NIS. Синтаксис domainname [-v] {nisdomain |-F file} По сути, эта команда ничто иное, как hostname -у. Суперпользователь может использовать эту команду для установки доменного имени службы NIS под названием nisdomain для текущего сетевого узла. Новое имя может быть назначено на основе таблицы имен узлов, хранящейся в заданном файле. Оп >ии -v Использует подробный формат вывода, сообщая об используемых системных вызовах. -F file Назначает для текущего узла новое доменное имя службы NIS на основе таблицы, хранящейся в указанном файле. QU - выводит количество дискового пространства, К используемого указанным файлом или каталогом. Синтаксис du [option]... I file]... Без аргументов информирует о дисковом пространстве, используемом текущим каталогом. Обычно размер выводится в блоках по 1024 байт. Опции -a, —all Выводит информацию о всех файлах. -b, —bytes Выводит размер в байтах. —block-size=5ize Использует блоки заданного размера (байты). -с, —total Выводит итоговую информацию для всех аргументов после их обработки. -D, — dereference-args Не следует символическим ссылкам, задаваемым в командной строке, что не распространяется на другие символические ссылки. -h, --human-readable Добавляет к выводимому размеру соответствующую букву, например М, указывая размер в мегабайтах (1048576 байт) или других едишимх. -Н, —si Тоже добавляе г к выводимому размеру соответствующую букв), но использует единицы И1мерения, кратные 1000, а не 1024. -k, —kilobytes Выводит размер дискового иростраиспш и виде блоков по 1024 бант.
II. Команды 209 -1, — couni-links Учи гывает размеры всех файлов, u i ом числе и файлов жестких ссылок. -L,—dereference Информирует о дисковом пространст ве, используемом файлом или каталогом, на который указывает ссылка, вместо пространства, занимаемого самой ссылкой. —max-depth=ctep//i Если указана опция -all, выводит итоговую информацию для каждого каталога и файла, лежащего на уровне depth от корневого каталога иерархии. Корневой каталог имеет уровень 0. -m, —megabytes Печатает размеры в блоках по 1 мегабайту (1048576 байт). -s, —summarize Отображает только итоги по каждому аргументу. -S, — separate-dirs Сообщает лишь о собственном размере каждого каталога, не включая размеры подкаталогов. -х, —one-file-system Исключает из рассмотрения каталоги, принадлежащие иным файловым системам чем та, чей аргумент обрабатывается в настоящий момент. —exclude=par При рекурсивной обработке пропускает каталоги или файлы, имена которых совпали с шаблоном pat. -Xfile, — exclude-from= file Подобна опции —exclude, хотя набор используемых шаблонов берет из указанного файла file, в котором они содержатся по одному в каждой строке. Пример $ du rab 8 rab/person 4 rab/test 72 rab $ QUmp создает ре ервную копию файловой системы ext2 интаксис dump [-0123456789ackMnSu][-B records] [-b blocksize][-d density] [-e inode_number][-f /ile][-F script][-h level]]-L label]]-s feet] [-T date] filesystem dump [-0123456789ackMnSu][-B records][-b bioctsize] [-d density] [-e lnode_number]{-t file][-F script] [-h level] [-L label ][-s feet] [-T date] directory dump [-W|-w]
210 II Команды Команда dump анализирует файловую сие тему ext2 и oi феделяет, какие файлы нужно зарезервировать. Файлы копируются на заданный диск, лен гу или на дру| не носители, обеспечивающие сохранность информации. Копия файловой системы может быть многотомным файлом. По умолчанию каждый том носителя поименован, чюбы можно было пригласить операгора для установки нужного юма. Опции -0 - -9 Указывает уровни копирования. Нулевой уровень предполагает полное резервирование файловой системы. Резервирование всех остальных уровней - инкрементальное (частичное) - предполагает копирование всех новых файлов или обновленных со времени последнего резервирования более низкого уровня. По умолчанию принят уровень копирования, равный 9. -В records Параметр records определяет количество блоков (размером в 1 Кбайт) на томе носителя информации. Эта опция перекрывает размер ленты, вычисляемый на основе ее длины и плотности. -а Производит запись до тех пор, пока не будет достигнут конец тома носителя, что является стандартом для большинства современных ленточных устройств. Применение этой опции рекомендуется при добавлении содержимого к существующей магнитной ленте или если ленточный накопитель обеспечивает сжатие информации, коэффициент сжатия которой трудно прогнозировать заранее. -b blocksize Устанавливает размер блока (Кбайт) при резервировании. Хотя система ввода/вывода обычно работает в соответствии с MAXBSIZE (обычно достигает 64 Кбайт). Использование блоков большего размера часто приводит к проблемам при восстановлении информации. Обычно dump ориентируется на MAXBSIZE. -с Предполагает, что по умолчанию используется ленточный картридж плотностью 8000 bpi и длиной 1700 футов. -е tnodenumber Исключает при копировании заданный дескриптор inode number. Индексный дескриптор файла или каталога можно определить с помощью команды stat. -h level -d density -ffile Учитывает пользовательский флаг nodump (не копировать) при выполнении копирования заданного уровня level; по умолчанию номер такого уровня равен 1. Так что при выполнении инкрементального резервирования файлы с таким флагом пропускаются, но псе же копируются при полном резервировании. Устанавливает плотность магни гной ленты, по умолчанию - 1600 bpi. Записывает копию в файлу?/с. В качестве данного нарлмеipa може! ia- давагься файл специального устройства (/dcWstO -ленючный накопитель или /dcv/rsdlc - накопитель на гибких магнитных чигках), обычный файл; если на месте этого параметра стоит дефис, предполагается стандартный пынод.
II. Команды 211 При многотомном копировании имена файлов, сося веч с гвуюшие конкретному тому, задаются и виде единого аргумента, компоненты которого разделяются запятыми и перечисляются в порядке следования томов. Последнее имя списка может использовагься многократно для всех оставшихся гомов, если количество предусмогренных имен меньше фактически затребованного. Если имя файла задано в формате hostifile или nser@host:ftle, программа dump использует указанный файл при записи на дистанционный узел с помощью rmt. По умолчанию принят маршрут /etc/rmt, который может быть перекрыт значением переменной окружения RMT. -F script Запускает сценарий script в конце каждого ленточного тома. Сценарий должен возвращать 0, если предполагается, что dump продолжает резервирование без просьбы поменять ленту, или 1, если продолжение предполагает замену ленточного тома. По соображениям безопасности dump обращается к реальным UID и GID перед запуском сценария. -к Использует аутентификацию Kerberos для обращения к дистанционным ленточным серверам. -L label Помещает заданную пользователем текстовую строку label в header (заголовок) копии, который используется командами restore и file. На размер текстовой строки label накладывает ограничения переменная LBLSIZE: обычно 16 символов, включая управляющую последовательность завершения \0. -М Задействует возможности многотомного резервирования. Имя, указываемое с помощью опции -f, рассматривается как префикс; dump заполняет последовательность поименованных томов: prejixOOl, prefix002, prefix003 и т.д. Это полезно при копировании файлов раздела ext2, так как позволяет преодолеть ограничения на размер файла - 2 Гбайта. -п Помечает всех операторов в группе operator, если команде dump требуется привлекать их внимание. -s feet Анализирует используемый размер магнитной ленты: если достигнуто значение_/ё«, программа dump приглашает установить новую ленту. По умолчанию длина магнитной ленты равна 2300 футов. _S Определяет, какой требуется объем носителей информации в байтах для выполнения копирования, но не осуществляет его. Это полезно, когда требуется определить, сколько потребуется томов для проведения резервирования. -Т date Использует заданную дату date для начала копирования вместо определенной при просмотре /etc/dumpdates. Формат дач ы такой же, как и для системного вызова ctime, т.е. абсолютное значение времени представляется количеством секунд, прошедших с 00:00:00 часов 1 января 1970 г., так называемое UTC (Coordinated Universal Time согласованное универсальное время). Опции -Т и -и взаимно исключают др> г др\ - га.
212 II Команды -и Обновляет файл /etc/clumpdates после ycneiunoi о завершения копирования. Каждая строка этого файла является иписью свободною формата, включающей имя файловой системы, уровень инкрементального резервирования и дату начала копирования в формате системного вызова ctime. Файловой системе для каждого уровня соответствует только один элемент файла. С помощью любого текстового редактора можно поменять любое из полей файла /etc/dumpdates. -W Программа dump сообщает оператору, какая файловая система будет копироваться. Эта информация извлекается из файлов /etc/dumpdates и /etc/fstab. Для каждой файловой системы из /etc/dumpdates распечатываются дата и уровень копирования. Имена файловых систем, которые должны копироваться, выделяются на экране дисплея. Если установлена опция -W, все другие опции игнорируются. -w Подобна опции -W, но распечатывает информацию только о тех файловых системах, которые предстоит копировать. Программа dump требует участия оператора в следующих случаях: конец ленты, завершение копирования, конец записи на ленту, ошибка при открытии ленточного файла или ошибка чтения с диска. dumpe2fs - выводит дамп, содержащий информацию о файловой системе. Синтаксис dumpe2fs [-bfhixV][-ob superblock][-oB blocksize] device Команда dumpe2fs распечатывает суперблок и информацию по группе блоков файловой системы, расположенной на устройстве device. Программа dumpc2fs напоминает программу dumpfs для BSD FFS (Fast File System - скоростная файловая система, такое имя получила файловая система BSD). Опции -Ь Печатает блоки, зарезервированные в файловой системе как сбойные. -ob superblock При проверке файловой системы в качестве суперблока использует указанный блок. Эта опция применяется лишь системным администратором при рассмотрении "остатков" поврежденной файловой системы. -оВ blocksize Использует указанный размер блока blocksize при проверке файловой системы. Эта опция обычно применяется системным администратором при рассмотрении "остатков" поврежденной файловой системы. -f Принуждает производить вывод, хотя moi ут Сыть ус гановлены некоторые флаги файловой сне темы, "непонятные" dumpc2fs. -h Выводит только информацию суперблока.
II. Команды 213 -i Выводи г данные файловой системы из файла-образа, созданного с помощью e2imagc, используя ар1умен! device в качесгве маршрута к файлу-образу. -х Печатает в шестнадцатеричиом формате легальную информацию по номерам блоков групп. -V Печатает версию dumpe2fs и завершает ее работу. Для анализа вывода следует понимать физическую структуру файловой системы. Пример I dumpe2fs /dev/hda2 Filesystem volume name: Last mounted on: Filesystem UUID: Filesystem magic number: Filesystem revision f: Filesystem features: Default mount options: Filesystem state: Errors behavior: Filesystem OS type: Inode count: Block count: Reserved block count: Free blocks: Free inodes: First block: Block size: Fragment size: Blocks per group: Fragments per group: Inodes per group: Inode blocks per group: Filesystem created: Last mount time: Last write time: Mount count: Maximum mount count: Last checked: Check interval: Next check after: Reserved blocks uid: Reserved blocks gid: First inode: Inode size: Journal UUID: Journal inode: Journal device: First orphan inode: <none> <not available> 4d9ab79e-a308-4598-9d6e-dl6b91aa2532 0xEF53 1 (dynamic) has_journal filetype sparse_super (none) clean Continue Linux 1256 5000 250 3795 1245 1 1024 1024 8192 8192 1256 157 Mon Oct 13 21:22:50 2003 Mon Oct 13 22:07:45 2003 Mon Oct 13 22:11:42 2003 1 29 Mon Oct 13 21:22:50 2003 15552000 (6 months) Sat Apr 10 21:22:50 2004 0 (user root) 0 (group root) 11 128 <none> 8 0x0000 0 Group 0: (Blocks 1-4999) Primary superblock at 1, Group descriptors at 2-2 Block bitmap at 3 (+2), Inode bitmap at 4 (+3) Inode table at 5-161 (+4) 3795 free blocks, 1245 free inodee, 2 directories Free blocks: 1205-4999 Free inodee: 12-1256
214 II Команды dumpKGyS - выводит информацию о драйвере клавиатуры и о самой клавиатуре. Синтаксис dumpkeys [-hilfnl -Sshape -ccharset —help —short-info —long-info —numeric —full-table —separate-lines —shape=sftape —funcs-only —keys-only —compose-only —charset=cAarset] dumpkeys записывает на стандартный вывод текущее содержимое таблиц трансляции драйвера клавиатуры в формате, указываемом keymaps. Используя различные опции, можно управлять форматом вывода и получать различную информацию от ядра и программ dumpkeys и loadkeys. Опции -h, —help Выводит информацию о версии программы, краткую справку о ее опциях и завершает работу программы. -i, —short-info Распечатывает некоторые характеристики драйвера клавиатуры, содержащегося в ядре: диапазон кодов, поддерживаемых ядром, количество действий, связанных с отдельно взятой клавишей, диапазоны поддерживаемых кодов действий, количество функциональных клавиш. —funcs-only Позволяет увидеть текущие определения функциональных клавиш. -1, --long-info Выводит информацию, аналогичную той, которая распечатывается с помощью опции -i, добавляя список действий символов, поддерживаемых loadkeys и dumpkeys. -f, --full-table Выводит подробную информацию о каждой клавише в каноническом формате. В первой строке листинга распечатывается комбинация, определенная в текущий момент. Затем распечатывается строка с несколькими столбцами. И если в текущем отображении клавиатуры задействовано шесть модификаторов, каждая строка будет содержать шесть столбцов действий. -1, —separate-lines Т© Записывает в каждой строке модификатор и код клавиши. -п, —numeric Печатает коды клавиш в шестнадцатеричном формате. -S, — shape=shape Указывает команде dumpkeys использовать таблицу в форме параметра shape, принимающего следующие значения: 0: по умолчанию I: такая же форма, как для опции —full-table 2: такая же форма, как для опции —separate-lines 3: выводит каждый код клавиши в отдельной строке После того как будет обнаружена первая "дыра", dumpkeys использ\ег форму 2.
II. Команды —keys-only Распечатывает только привязки клавиш. —compose-only Распечатывает юлько информацию о комбинациях клавиш. -ccharset. — chai set=charset Интерпретирует значения кодов в соответствии с указанным набором символов charset. Допускаемые наборы символов обычно выводятся с помощью опции -h. Если данная опция не задана, принимается значение iso-8859-l (английский, задается по умолчанию). Рекомендованный каталог для файлов keymaps - /usr/lib/kbd/keymaps. e2fsck проверяет вторую расширенную файловую систему Linux. Синтаксис e2fsck [-pacnyrdfvstDFSV][-b superblock] [-B blocksize] I -1|-L bad_blocks_file][-C fd][-j external-journal) [-E extendedoptions] device Аргумент device — специальный файл соответствующего устройства, где расположена файловая система, например: /dev/hdcl, /dev/hdc3 и т.д. Команда e2fsck используется для проверки второй расширенной файловой системы Linux (ext2). Но она также поддерживает файловую систему ext2 с журналом, известную как ext3. В случае ext3 команда e2fsck в первую очередь обращается к журналу файловой системы. Если с журналом все в порядке, файловая система будет отмечена как "чистая". Поэтому в случае ехтЗ команда e2fsck обычно запускает журнал и завершает свою работу, если только в суперблоке не указано, что требуется продолжить проверку. Опции -b superblock Вместо обычного использует альтернативный суперблок superblock. Обычно используется при повреждении основного суперблока. -В blocksize Обычно e2fsck при поиске суперблока сама пытается установить приемлемый размер блока, хотя в некоторых случаях этот процесс может оказаться безуспешным, и тогда с помощью blocksize назначается "жесткий" размер блока. Если суперблок не найден, работа e2fsck завершается с фатальной ошибкой. -с e2fsck запускает программу badblocks, чтобы найти и отмстить "плохие" блоки, добавляя их к набору сбойных дескрипторов. -С fd Записывает полную информацию по мониторингу файловой системы в файл с указанным дескриптором fd. -d Выводит отладочную информацию. _|3 Оптимизирует каталоги файловой системы или путем ионгорнмх) »\ индексирования, если данная файловая сие тема поддержнвае! индекса-
216 II Ком иды цию каталогов, или путем соргировки и сжашя катало! ов в меньшие по размеру, или используя традиционные линейные Kai алоги -Е extendcdoptions Устанавливает расширенные опции прснраммы e2fsck. Расширенные опции разделяются запятыми и могут включать аргументы, использующие знак равенства ("="). Поддерживается гакая опция: ea\er=extendedattribute version предполагает, что в данной файловой системе формат блоков с расширенными атрибутами определяется указанным номером версии, который можег принимать значение 1 или 2 (по умолчанию); -j external-journal Устанавливает маршрут, по которому может быть найден внешний журнал данной файловой системы. -f Заставляет производить проверку файловой системы, даже если файловая система в этом не нуждается. -1 bad_blocks_file, Направляет список сбойных блоков в файл badblocks^file. -L badblocks^file Направляет список сбойных блоков файловой системы в файл badblocks^file. Эта опция подобна опции -I, но в отличие от нее список сбойных блоков предварительно очищается перед добавлением в него новых блоков. -F Предварительно освобождает буферный кэш устройства, на котором расположена файловая система. -п Открывает файловую систему в режиме "только для чтения". Предполагается, что e2fsck будет работать неинтерактивно и на все вопросы поступит отвег "по" (нет). Но если помимо этой опции будут заданы опции -с, -1 или -L, файловая система будет открыта в режиме "чтение- запись", что позволяет обновить список сбойных блоков без каких-либо других изменений. -р, -а Автоматически "ремонтируег" файловую систему, не задавая вопросов. -г Эта опция ничего не выполняет и существует лишь для обратной совместимости. -s Заставляет функционировать файловую систему в режиме нормализованного, стандартного порядка расположения байтов (как на i3S6, или little endian (начиная с младшего)). -S Подобна -s, но носит более принудительный характер. -t Печатает для e2fsck хронометрированную статистику. -v Печатает подробную информацию. -V Выводи г информацию о версии программы и запершие i ее выполнение
II. Команды 217 "У исущес гвляет неингеракгииный режим рабогы e2fsck, предпола/ ая что на все вопросы получен ответ "yes" (да). Коды завершения e2fsck являются суммой числовых значений следующих ус швий- 0 нет ошибок 1 ошибки файловой системы скорректированы 2 ошибки файловой сис1емы скорректированы и если она была смонтирована, система будет перезагружена 4 ошибки файловой системы не корректировались 8 ошибка операции 16 предупреждение или синтаксическая ошибка 32 программа e2fsck завершается по запросу пользователя 128 ошибка совместно используемой библиотеки e2image - сохраняет в файле критичные данные файловой системы ext2/ext3. Синтаксис e2image [-г) device image-file Программа e2image сохраняет в файле image-file критичные данные файловой системы ext2, размещенной на устройстве device. Файл может быть использован системным программистом и способствовать восстановлению поврежденных файловых систем. Было бы очень полезно периодически (во время загрузки или раз в неделю) создавать файлы-образы всех файловых систем, и было бы просто идеально еще и хранить такие файлы отдельно (где-нибудь в стороне от критичных файловых систем). Если вместо image-file стоит дефис, выходная информация программы e2image будет направлена на стандартный вывод. Опции -г Вместо обычного создает низкоуровневый файл-образ. Такой файл-образ отличается от обычного образа файловой системы. Во-первых, метаданные файловой системы размещаются в должном месте, поэтому e2fsck, dumpe2fs, debugfs могут разобраться с таким файлом. Чтобы сократить потребляемую дисковую память, такой файл создается как неполный (неполное выделение используется для размещения файчо- вой системы, которая заполнена не полностью, при этом реачьная память полностью не выделяется). Низкоуровневый флнл-образ ыкже включает в себя побочные блоки и блоки данных, которые текчщин файл-образ не имеет. фимер I e2image -r /dev/hda2 imageext e2image 1.32 (09-NOV-2002)
218 II Команды GChO записывает заданные строки на стандартный К вывод. Синтаксис echo [option]...[string]— Записывает каждую заданную строку string на стандартный вывод (обычно на экран) с символом nt'wline (новой строки) через пробел в ее конце. Оп ии -п Не выводит завершающий символ новой строки. -е В каждой заданной строке интерпретирует следующие управляющие символы: \а выдает звуковой сигнал тревоги \Ь возврат на один символ \с подавляет завершающий символ новой строки \f перевод (прогон) строки \п символ новой строки \г возврат каретки \t символ горизонтальной табуляции \v символ вертикальной табуляции \\ обратный слэш \ппп символ, чей ASCII-код равен ппп (восьмеричное значение) Пример $ echo "My dear friend" Ну dear friend GO - вызывает строковый редактор. К. ed [-][-Gs]l-p string][file] red [-][-Gs][-p string] [ tile] Редактор ed работает через буфер. Если вызывается с аргументом file, то копня указанного файла считываегся в упомянутый буфер. Редакгор red - урезанная версия ed, он можег только редактировать файлы гекл щего каталога и не может выполнять команды оболочки. Редактор red рекомендуется применять, если вы югружаеге с .uii p> ючнон дискеты минимальную версию Linux (а вдруг что придется сделать в случае вошнкновення серьешых проблем) и никакие полноэкранные редан торы не дос пины.
II. Команды 219 Раоога в редакторе ed производшся в двух режимах: в командном или ввода гексча. В первый режим пользователь попадает по умолчанию. Любая нажатая клавиша в этом режиме воспринимается как команда. Режим ввода 1ексга устанавливается с помощью команд а (добавить), с (изменить) и i (вставить). После ввода необходимого текста досрочно набрать в строке единственную точку, чтобы завершить второй режим. Опции Запрещает информировать о количестве символов редактируемого файла и печатать диагностические сообщения. -G Оставляет в силе обратную совместимость. -pstring Указывает приглашение командной строки. -s Действует так же, как единственный дефис. Основные команды \command Выполняет команду оболочки. + Выполняет переход к следующей строке. Выполняет переход к предшествующей строке. +и Выполняет переход к следующей и-ой строке. -и Выполняет переход к предшествующей и-ой строке. Обращается к текущей строке. = Печатает номер строки. Iregexl Выполняет поиск в прямом направлении указанного регулярного выражения. ?regex? Выполняет поиск в обратном направлении указанного регулярного выражения. с Меняет указанные строки. d Удаляет указанные строки. i Вставляет текст перед текущей строкой. р Печатает указанные строки. m Перемещает строки. q Выходит из редактора. Q Выходит из редактора без сохранения внесенных изменении. г file Считывает и вс гавляет содержимое указанного файла file после текущей строки. s/old/new Замешае г старую строку old на новую new. и Отменяет последнюю команду. W file Добавляе г содержимое буфера п конец указанного файла file. v/file Сохраняет содержимое буфера в указанном файле.
220 II Команды Большинству команд предшествует номер строки или диапазон номеров, разделенных занятыми. П•име• Ниже приведен фрагмент работы в ed. На обращение к несуществующему номеру строки реагирует знаком вопроса. По концу сеанса производит сохранение буфера в файле prim93. а; misha(aiocalhost.localdomain: /home/misha/reb CmisViaQlocalhost гаЫ* ed prim93 79 lp lruxruixrux 1 misha misha 15 Йвг 6 20:27 hhh -> /rab/person/hhh итого 10 по квждой корректировке 4p 3p по кяждой корректировке uq 112 | [mishaQlocalhost rab]t | ^ Л / edquota редак иру-т пользовательские квоты. Синтаксис edquota f-p proto-user\ [-ug) name... edquota (-n1[-ug] -t В командной строке можно задать одно или более имен пате пользователей или групп, для каждого из которых создается временный ASCII-файл, задающий дисковые квоты, а затем вызывается соответствующий редактор (по умолчанию vi). Квоты могут модифицироваться, также могут быть добавлены новые квоты и т.д. Перед тем как покинуть редактор, определяемый переменной окружения EDITOR, программа edquota считывает временный файл и модифицирует двоичные файлы квот, отражая произведенные изменения. Только суперпользователь может редактировать квоты. Чтобы в файловой системе были задействованы квоты, в корневом каталоге должен существовать файл quota.user или quota.group, владельцем которого является суперпользователь (см. quotaon). Опции -Е Редактирует также и не локальную квоту, используя rpc.rquotad (или rquotad) на дистанционном сервере, чтобы установить квоты. Редактирует квоты пользователя. Действует по умолчанию. Редактирует квоты группы.
II. Команды 221 -р proto-user Дублирует квогы пользователя prolo-user для каждого указанного в командной строке пользователя. Эю обычный механтм инициализации квот для групп пользователей. -' Редактирует временные лимиты для каждой файловой системы. Если временные лимиты равны нулю, используются лимиты, определенные по умолчанию, из файла <linux/quota.h>. Прц^лер t edquota -u Sofia Bj rootOlocalhostlocaldomain:/root Шайл Правка Settings Справка SJjotas for user sofia: /deu/hda5: blocks in use: 0, limits (soft = 0, hard = 0> inodes in use: 0, Units (soft = 0, hard = 0) "/tmp/'EdP.a9U7k2s" 3L, 127C Нечто подобное содержится для пользователя sofia: никакие лимиты (ни жесткие, ни мягкие) пока не установлены. Можно установить лимиты на количество используемых блоков (дискового пространства) и файлов. Мягкие лимиты указывают максимальное количество блоков и файлов (дескрипторов), которое предоставляется пользователю в этой файловой системе, а жесткие лимиты - абсолютное количество блоков и файлов, которое может иметь пользователь. После корректировки (под редактором vi) квоты для пользователя sofia возможно приобретут следующий вид: ш\ root@localh.ost.localdomain:/root _ И X Шайл Правка Settings Справка Quotas for user sofia: /deu/hda5: blocks in use: 0, limits (soft = 1024, hard = 409Б) inodes in use: 0, limits (soft = 128, hard = 256>| INSERT GQTGp одна из разновидностей команды grep, работаю- К щая с расширенными регулярными выражениями. Команда egrep тго то же самое, что grep -V (см. команду grep).
222 II Команды Пример $ egrep -w "i(nput)?" prim62 input/output errors i/o operation fast input-output $ eject - "выбрасывает" носители информации из устройств. Синтаксис eject -h eject [-vnrsfq][name] eject [-vn] -d eject [-vn] -a on|off|l|0 [паше] eject [-vn] -c slot [ваше] eject [-vn] -t [лаше] Позволяет программно освободить устройства от сменных носителей информации: дискет, компакт-дисков, лент, дисков JAZ или ZIP. Освобождается устройство, указанное аргументом name из отверстия slot. В качестве этого аргумента можно задать файл устройства или точку монтирования (см. mount), по умолчанию принимается ключевое слово cdrom. Опции -h, —help Выводит описания опций командной строки. -v, --verbose Подробно информирует о действиях команды. -d, —default Выводит имя устройства, принятого по умолчанию. -a on|l|off|0, -auto оп| 1 [off]0 Управляет режимом автовыброса, поддерживаемым некоторыми устройствами. Если опция включена (on или 1), то при закрытии устройства автоматически "выбрасывает" носители информации. -с slot, —changerslot slot Выбирает заданный слот (нумерация с 0) устройства ATAPI/IDE CD- ROM, чтобы сменить носитель (например, музыкальный CD). -t, —trayclose Отправляет устройству команду close, хотя не все устройства (только CD-ROM) поддерживают эту команду. -п, —поор Сообщает о выбранном устройстве, но не предпринимает никаких действий. -г, —cdrom Освобождает CD-ROM. -s, —scsi Освобождает SCSI-устройство от носителей информации. -f, —floppy Освобождает устройство от гибких дисков.
II. Команды -q, — lape Освобождает ленточное устройство от носителей. . Пример t eject -v -c2 /dev/cdrom t Выбрасывает второй диск устройства CD-ROM с несколькими сменными дисками. dill интерактивная почтовая система. Синтаксис elm [-achkKMSmtvz][-i file][-t alternate-folder] [-d debug-level] elm [-s subject][-i. file] list-of-aliases\addresses elm - это интерактивная экранно-ориентированная почтовая программа, заменяющая mail и mailx. Существует три способа применения почтовой пропзаммы. Первый способ предполагаег задание списка адресов addresses или псевдонимов list-of-aliases в командной строке при вызове почтовой программы. Это позволяет отправить единственное сообшение указанным получателям со всеми опциями, которые допускает почтовая система elm. При этом пользователю будет предложено под- 1'отови гь текст сообщения с помощью текстового редактора. Второй способ предполагает пересылку файлов, указываемых в командной строке, через переназначение стандартного ввода. И, наконец, третий способ подразумевает вызов почтовой программы без указания в командной строке адресов, темы сообщения и файлов. В этом режиме пользователь сможет считывать любое сообщение из своего входящего почтового ящика или указанной папки, отвечать на сообщения, отправлять сообщения. ■ции -а Использует указатель сообщений в виде стрелки вместо инверсной строки, предполагаемой по умолчанию. -с Расширяет идущие далее псевдонимы и завершает работу, -d debug-level Устанавливает указанный уровень debug-level отладочного режима. Вывод направляется в SHOME/ELM:debug.info. -f alternate-folder Считывает содержимое указанной папки alternate-folder вместо почтового ящика. -h Выводит список изначальных опций. -i file Включает приготовленный в буфере редактирования файл для отправки. -к Задействует особенности клавиатуры терминалов HP, разрешая использовать клавиши NEXT. PREV и HOME/SHIFT-HOME. -К Разрешает использовать программируемые клавиши для терминалов HP. _М Трактует все папки, как если бы они были сиул-панкой (блокирование, статус обновления, заголовки и т.д.).
224 II Команды -S Ус ганавливает лишь режим отправки. -s subject Указывает тему почтового сообщения. -т Использует дополнительные строки, возникающие при отключении меню, для заголовков сообщений, -t Отключает использование управляющих последовательностей ti/te, применяемых termcap/terminfo. -v Выводит информацию о версии программы и конфигурации. -z Даже не начинает работу elm, если нет ожидающей почты. Ниже приведен список применяемых переменных окружения: REP LYTO обратный адрес для ответа, принятый по умолчанию тип терминала пользователя регистрационное имя пользователя имя, альтернативное регистрационному имени пользователя исходный каталог пользователя расположение почтового файла количество строк на экране количество столбцов на экране команда, используемая для вывода многостраничного почтового сообщения; по умолчанию принята builtin+ каталог для временных файлов используемый редактор NOMETAMAIL если установлена эта переменная, то не используется metamail, работающая с мультимедийными сообщениями формата MIME Пример После ввода elm -m -i vvv возникает строка Send the message to:, где требуется ввести адрес получателя сообщения. Затем возникает примерно такой экран: TERM LOGNAME USER HOME MAIL LINES COLUMNS PAGER TMPDIR EDITOR ш', root@localhost.loceldomain: /root ^\ЪУ< Файл Правка Settings Справка Send only node [ELM 2.5 PL3] To: mishaQunitycon Subject of message: предупреждение Copies to: | В строку Subject of message: заносится тема сообщения. Если имеется адресат, которому должна быть отправлена копия сообщения, укажите его в строке Copies to:. В противном случае нажмите Enter. Далее появится экран редактирования явленном случае редактор vi) с первой и единственной в нашем примере строкой, включенной из файла vvv.
II. Команды 225 щ! root@localhost.loc8ldomain:/root '_-!'n''x Файл Правка Sellings Справка [рзаг Mike! Vtnp/snd.1094" [noeol] 1L, 18C QITI3CS запускает известнейший редактор GNU Emacs. Синтаксис emacs [command-line-switches\ [ file... ] GNU Emacs - наиболее мощный редактор семейства Emacs. Следует отметить, что Emacs - оконный редактор, который может делить экран терминала на несколько окон. В каждом из них можно выполнять различные действия: редактировать разные файлы, посылать и принимать почту, создавая ответы на полученные сообшения, выполнять команды оболочки и многое другое. Emacs - это редактор реального времени, так как ваш экран обновляется очень оперативно, стоит только набрать один-два символа. Помимо обычной вставки или удаления текста редактору Emacs присущ ряд расширенных возможностей: управление подпроцессами, соблюдение соглашений, касающихся отступов и комментариев в исходном тексте программы, одновременный просмотр двух или более файлов, редактирование форматированного текста. Специальные режимы существуют буквально для каждого языка программирования. Во время ввода программы на языке С, редактор автоматически расставляет фигурные скобки и подсказывает, где их не хватает. Существуют специальные режимы для работы с HTML, ТЕХ, troff. Редактор даже имеет свой собственный встроенный интерпретатор языка Lisp. Запущенный под X Window редактор имеет свои собственные меню и привязки к кнопкам мыши. Но Emacs также может воплотить многие возможности оконных систем на обычном текстовом терминале. С помощью аргументауг/е можно указать в командной строке файлы для редактирования. о ии {command-line switches) С помощью number указывает номер строки для перехода. Между знаком плюс и собственно номером не должен стоять пробел. Запрещает загружать файл инициализации (.emacs). Загружает файл инициализации пользователя. Использует указанный файл в качестве терминала вместо stdin/stdout (стандартного ввода и вывода). -{Junction 3ai ружаст указанную функцию языка Lisp. Осно л-mimber -q -u user -I file
226 II Команды -1 /lie Загружает в указанный файл исходный код на языке Lisp. -batch Выполняет редактирование в пакетном режиме. Редактор посылает сообщения в стандартный файл ошибок. Эта опция должна быть первой в списке аргументов. Ее можно применять совместно с опциями -I, -f, чтобы указать файлы для исполнения и функции для вызова. kill В пакетном режиме завершает emacs. -name пате Указывает имя, назначаемое исходному окну emacs. -title пате Указывает заголовок исходного окна в X Window. -г Отображает окно Emacs в режиме reverse video (обратное видео). -i При сворачивании окна Emacs использует пиктограмму в виде кухонной раковины. -font font, -tin font Устанавливает заданный шрифт в заголовках окна Emacs. Можно назначать разные шрифты X из каталога /usr/lib/XH/fonts, но Emacs только принимает шрифты фиксированной ширины. Любой шрифт с буквой m или с в одиннадцатом поле имени шрифта является шрифтом фиксированной ширины. Между переключателем и именем задаваемого шрифта должен обязательно находиться пробел. Шрифты, чьи имена соответствуют формату ишринахеысота, также являются шрифтами фи- сированной длины. -b pixels Устанавливает ширину рамки окна Emacs в пикселах. По умолчанию принимается по одному пикселу на каждой стороне окна. -ib pixels Устанавливает ширину внутренней рамки окна Emacs. По умолчанию принимается один пиксел заполнения на каждую сторону окна. -geometry geometry Устанавливает геометрию окна Emacs в формате, принятом в системе X: ШИРИНАхВЫСОТА+XOFF+YOFF. Части геометрической спецификации - XOFF и YOFF - измеряются в пикселах и указывают расстояние от окна до соответственно левой или правой, а также верхней или нижней границ экрана. ШИРИНА и ВЫСОТА измеряются в символах; по умолчанию принято соответственно 80 и 24 символа. -fg color Устанавливает цвет текста (для цветных дисплеев). В файле /usr/lib/Xll/rgb.txt содержится список допускаемых наименований цветов. -bg color Устанавливает цвет фона окна (для цветных дисплеев). -bd color Устанавливает цвет рамки окна (для цветных дисплеев). -cr color Устанавливает цвет текстового курсора (для цветных дисплеев). -ms color Устанавливает цвет курсора мыши (для цветных дисплеев). -d displayname, -display displayname Создаст окно Ftnacs на указанном дисплее. В командной строке на опция должна указываться мерной.
II. Команды 227 -nw Отказывается от применения специальною интерфейса к системе X Если эгот переключатель используйся при вызове emacs из окна xterm, дисплей будет создан в упомянутом окне. В командной строке эта опция должна указываться первой. В файле ресурсов .Xresources можно установить (см. xrdb) значения по умолчанию системы X для вашего окна Emacs. При этом используется следующий формат: етас&.ключевое_слово: значение Пр ерь Ш emacs©1oca]host.lDcaldomain I Buffers Files Tools Edit Search Hule Hinibuf Help iThis buffer is for notes you don't want to save, and for Lisp evalua I If you ujant to create a file, visit that file with C-x C-f, I then enter the text in that file's own buffer. — :— ^scratch* (Lis Interaction)—L5—fill Click mouse-2 on a completion to select it. T~i this buffer, type RET to select the completion near point. Possible completions are: prim24 prim26 prim28 prim30 irim32 *ComDletions* B]Find file: ~/prirrU prim25 prim27 prim29 prim31 orim33 (ComDletxon List (Пример 1) Ш': emucs©locolhostlocsldomoiri Buffers Files Tools Edit Search Hule Headers Hail Help To: Q ^~ Subject: —text follows this line- u ♦mail* This is an example This is first line This is second line. This is last line (Mail)— LI—All- ndamental—LI—All (Пример 2) Редактор Emacs обладает таким интересным свонсгвом, как дополнение команд: гребует ввести минимальное количество необходимой информации, а остальное ю-
228 II Команды полняет сам. Данная возможность применяется при вводе имен и названии. Следует ввести лишь несколько символов имени, нажать Tab, а остальное Emacs добави г самостоятельно. Если введенная часть имени не является уникальной, пользователю будут предложены альтернативные варианты (Пример 1). Окно Emacs разделено на две части (Files ■=> Split Window). В нижнее окно загружен файл prim26. Верхнее окно подготовлено для создания почтового сообщения (Tools ■=> Send Mail) (Пример 2). ©11V - выполняет команду в измененном окруж-нии. К Синтаксис env [ option]... [ NAME=VALVE]... [ command[ args]...] Аргументы в формате NAME=VALUE устанавливают переменную окруженияNAME в значение VALUE. Ваша система Linux имеет множество переменных окружения, которые используются в самых разных ситуациях. Переменные окружения определяют используемую по умолчанию оболочку, или командный процессор, тип терминала, маршруты, текстовый редактор, исходный каталог пользователя, строку приглашения и многое другое. Могут применяться аргументы в формате NAME=, присваивающие пустое значение переменной NAME. Первый оставшийся после обработки опций аргумент указывает имя вызываемой программы command, далее в командной строке следуют ее аргументы args. Вызываемая программа ищется по маршруту, представленному в переменной PATH. Если не задано имя программы, действует подобно printenv - распечатывает полученное окружение. Оп ии -, -i, — ignore-environment Игнорирует текущие значения всех переменных окружения. -u NAME, -\mset=NAME Удаляет из окружения переменную NAME, если таковая существовала в окружении. --help Печатает список опций и завершает программу. —version Выводит информацию о версии программы и завершает ее. Пример А вот как можно определить текущее время, скажем, во Франции. Достаточно установить соответствующее значение переменной TZ, определяющей часовой пояс, и запустить команду date. ш, misha©localhost.localdomain:/home/misha I [mishaQlocalhost mishalt date | Птн Йвг 11 18:27:17 EEST 2000 1 [mtshaGlocalhost mlsha]$ env TZ=France date 1 Птн Йвг 11 15:27:41 France 2000 1 [mishaGlocalhost misha]t I 1 Д
II. Команды 229 etags см. команду ctags. expand выводит содержимое указанных файлов, преобразуя символы табуляции в пробелы. Синтаксис expand [ option ] I file] Команда записывает содержимое указанного файлау?/е или стандартного ввода, если вместо аргументаУ?/е стоит дефис, на стандартный вывод, преобразуя символы табуляции в соответствующее число пробелов. По умолчанию конвертирует в пробелы все символы табуляции. Опции -1аЫУаЬ2] .. -initial , -t tabl[,tab2] ..., -tabs= tab\[,tab2] ... Устанавливает символы табуляции в позициях lab\ и tab! (нумерация с 0). Если указан один параметр tab, устанавливает задаваемое им количество пробелов (по умолчанию 8). В каждой строке конвертирует лишь начальные символы табуляции, те, что предшествуют любому символу за исключением пробела или символа табуляции. expect запускает программируемый диалог с интерактивной п«ог«аммой. К expect [-dDinN][-c rands][-[f|b] cmdfile][ergs] Программа expect организует диалог с любой интерактивной программой согласно указанного сценария. Многие приложения выводят приглашения (запросы) и ожидают от пользователей ввода ответных строк. Такое интерактивное взаимодействие можно автоматизировать, написав несложные сценарии для программы expect. Получается. expect может запускать интерактивные приложения в пакетном режиме. Сценарии для программы expect чаше всего пишутся на интерпретируемом языке Tel, который является типичным представителем языков оболочек. Само название программы expect произошло от последовательностей send/expect (посылать/ожидать), используемых в сценариях UUCP, kermit и других программ управления модемом. Программа expect считывает файл cmdfile в поисках команд для выполнения. Необязательные аргументы args хранятся в виде списки в переменной argv. Еше одна переменная argc инициализирус гея для хранения длины nrgv, переменная argvO содер-
230 И Команды жш имя сценария, хотя но можег быть и двоичный файл, если никакой сценарии не используется. Опции -с cmds Определяет команду, исполняемую до начала сценария. Команду следует заключи гь в кавычки, -d Делаег возможным вывод диагностики. -D Запускает интерактивный отладчик, -f cmdfile Задает файл сценария, из которого считываются команды. -b cmdfile Вместо сценария считывает двоичный (исполняемый) файл. Если вместо cmdfile стоит дефис, считывает стандартный ввод. -i Выводит интерактивные приглашения для команд вместо того, чтобы считывать их из файла. Завершает список опций команды expect. -N Отменяет использование файла инициализации Sexplibrary/expect.rc. -п Отменяет использование файла инициализации —/.expect.rc. Многие пользователи применяют программу expect для тестирования интерактивных программ и технических средств. 6Хр1Г6 - программа, оформляющая удаление статей новостей Usenet с истекшим сроком хранения. Синтаксис expire [-c][-D dir][-d dir][-e][-f file][-g file]]-h file]I-i][-k][-1] [-N][-n][-p][-q][-r reason][-s][-t][-u fiie][-v level][-v number] [-x][-Z file][-z file][expire.ctl] expire просматривает текстовый файл history (по маршруту <pathdb in inn.conf>/history) и использует найденную в нем информацию для окончательного удаления старых статей. Если в файле inn.conf задана опция storageapi и используется файл overview.ctl, что требуется для storage manager (менеджера хранения), то буду г удалены старые унифицированные просмотренные данные. Однако и в этом случае потребуется expire: она "удостоверится", существует ли статья, и, если статья уже отсутствует, примегся за удаление соответствующих элементов в файлах history и unified overview (БД унифицированного просмотра). Чтобы отключить эту возможность, применяется флаг-N. Оп ии -с Если статьи хранятся с опцией storageapi, то на этом принципе б\дет анализироваться срок их хранения. С флагом -с устанавливает срок хранения в соответствии с группой новостей. -D dir Указыпас! каталог dir, в котором будут создаваться новые )инфицированные файлы об трон.
II. Команды 231 -d dir Указывает каталог dir, в коюром создакмся новый файл history и БД обзоров. Обычно применяется совместно с флшом -г -е Удаляет все копни статьи, как только истечет срок хранения первого выпуска с 1атьи. -f file Задает альтернативный файл для history. -gfile Расширяет выводимую диагностику для указанного файлаУ?/е. -hfile Задает алыернативный входной текстовый файл в качестве history. По умолчанию без этого флага используется <pathdb in inn.confVhistory. -i Игнорирует старую БД. -к Статьи новостей будут удалены лишь тогда, когда истечет срок их хранения во всех группах, где они появились. Флаги -е и -к не могут употребляться одновременно. -1 Обычно expire разрывает связи каждого файла, если истек срок его хранения. В случае задания этой опции все статьи после первой рассматриваются как символические ссылки к первой статье. И в этом случае первая статья не удаляется до тех пор, пока на нее ссылаются другие статьи. Если вместе с этим флагом задан флаг -е, то флаг -I игнорируется. -N Если статья хранится с опцией storageapi и применяется собственный метод определения срока хранения, тогда по умолчанию управляющий файл (control file) для этой статьи игнорируется. Если задан флаг -N. expire и в этом случае использует управляющий файл. -п Если демон innd не запущен, флаг -п запрещает expire посылать команду pause или go. -р expire обычно "принимает свои решения", основываясь на времени поступления статьи, как это записано в файле history. Однако возможно и другое решение, когда за базовую дату принимается время выпуска (выхода в свет) статьи. В этом случае применяется флаг -р. -q expire обычно "выражает недовольство" по поводу статей, направляемых в группы новостей, которые не упомянуты в файле active. Для подавления вышеописанного действия применяется флаг -q. -г reason expire обычно посылает локальному демону innd команду pause, когда ей нужно получить исключительный доступ к файлу history. При этом в качестве причины reason задается строка Expiring (истечение срока действия). С помощью флага -г можно указать к другую причину, добавив еще и ID процесса. -s Завершая выполнение своих функций, expire распечатывает количество килобайт, ранее занимаемых удаленными статьями. .t Создаст и направляет па стандартный вывод список файлов, которые будут удалены; новый файл history Суде! чроиеден черс< historj.n. history.n.dir, liistory.n.indcx, liistory.n.hasli.
232 Н Команды -и file Добавляет имена удаленных статей в указанный фаил///е, который может применяться как входной для expireindex. -v level Определяет уровень диагнос гики, направляемой насгандартный вывод Параметр level - тго число: чем оно больше, тем выше уровень диагностики. Для уровня 1 печатаются итоги по различным выполненным действиям, для уровня 2 - индивидуальный отчет по каждому файлу; на уровне 5 создается более одной строки вывода для каждой отработанной строки. -w number Иногда нужно, чтобы expire "считала", что она работает в другое время, нежели текущее. Для этого служит флаг -w; параметр number- это число с плавающей запятой, задающее количество дней, используемое как смещение. -х Не будет создавать никакие новые файлы history. -z file He удаляет статьи, а добавляет их имена в указанный файл file (см. описание ключевого слова delayrm в команде news.daily). -Z file Если используется флаг -Z, сохраняет метки low marks для каждой группы новостей хранятся в указанном файле file, который затем может использоваться ctlinnd для приведения в порядок файла active. Если в командной строке еще и указано имя файла, он берется в качестве управляющего файла и анализируется в соответствии с правилами, изложенными в файле expire.ctl. Единственный дефис означает чтение файла со стандартного ввода. Если не указан никакой файл, считывается файл <pathetc in inn.confVexpire.ctl. expireindex - удаляет элементы из индекса обзора новостей. Синтаксис expireindex [-a] [-D overviewdir] [-1] [-п] [-о] [-q] [-v\ [-z] [file ] expireindex считывает список групп новостей и номеров статей из указанного фай- nafile или стандартного ввода, если имена файлов не указаны. В качестве стандартного ввода может стоять дефис. Каждая считанная строка может состоять из двух полей, разделенных двоеточием. Первое поле- имя группы новостей. В этом формате имеющаяся точка в имени группы будет замещаться прямым слэшем. Второе поле - номер статьи с истекшим сроком хранения. Любые упоминания об этих статьях будут удалены из соответствующего индекса базы обзоров статей. Если пользователь отключил опцию storagcapi в файле inn.conf, придется с помощью expircover удалить обзор. Проверку выполненной манипуляции ос\ щсствляст сценарий news.daily. Опции -а Расширяет индекс, считывая содержимое входного файла. В отличие от ovcrchan, после чтения входного файла сразу же записывает индекс
II. Команды 233 базы обзоров, по этой причине входной файл должен бьпь отсортирован. Каждая входная строка состой г из двух полей, разделенных пробелом. Первое ноле - это маркер схагьи. Второе поле, в свою очередь, состоит из двух подполей, разделенных двоеточием: первое из которых являегся именем группы новостей, а второе- номером добавляемой статьи. Входной файл может бьпь создан с помощью makehistorj с опцией -I. -D overviewdir Определяет место хранения баз данных. По умолчанию принимается каталог <pathoverview in inn.confX -1 Удаляет все старые элементы указателя более низкого уровня, чем номер считанной из входного файла статьи. Каждая строка входного файла состоит из двух полей, разделенных пробелом: первое поле - имя группы новостей, второе поле - номер статьи (наименьший сохраняемый номер статьи). Входной файл может быть создан expire с опцией -Z. -п Не производит в действительности никаких обновлений. -о Перед расширением нового индекса игнорирует все старые указатели обзоров. Этот флаг может применяться вместе с флагом -z, и тогда входной файл будет отсортирован по именам групп новостей. Данный флаг имеет силу, если используется флаг -а. -q Запрещает выдачу сообщений о неудачном открытии lock-файлов. -v Позволяет увидеть список элементов, намеченных для добавления или удаления. -z Предполагает, что все элементы для одной какой-либо группы новостей будут отсортированы и собраны вместе, что значительно облегчает их последующее удаление. Этот флаг применяется вместе с флагом -а или с отсортированным выводом expire с опцией -z. ©XpiTGOVGr в связи с истечением срока хранения удаляет элементы из БД обзоров. Синтаксис expireover [-a][-D overviewdir] [-f file][-n][-о overview.fat] I-q] (-sj [-v][-z][ file...] expireovcr считывает список маршру гов (относительно спул-каталога ^patharticles in inn.conf>) из указанных файлов file или сгандартного ввода, если имена не заданы или вместо них стоит дефис. А затем удаляет из соогветс гвующсй БД любые \ поминания об этих сгатьях. Если пользователь установил опцию storagcapi в файле inii.conf, ему еле rjei использовать expircindcx для обновления индекса npocMoipa.
234 II Команды Опции -а Считывает сиул-каталог и добавляет любые огсутс1вующие »лементы базы обзоров, при этом, если необходимо, будут созданы файлы. Данный флаг используется для инициализации БД, а также для синхронизации БД, в которой не хватает по какой-либо причине статей. Желательно запустить overchan, чтобы удостовериться, что все входящие статьи включены. Применение этого флага подразумевает и флаг -s. Можно указать флаг -f, добавляющий только некий набор групп новостей. -D overviewdir Флаг -D указывает каталог overviewdir, в котором хранятся БД. По умолчанию принят каталог <patharticles in inn.conf>. -f file Обычно expireovcr считывает спул-каталог для всех групп новостей, упомянутых в файле active. Можно указать альтернативный файл/i/e. В качестве его имени можно использовать дефис, что будет означать стандартный ввод. -п Не производит в действительности никаких обновлений. -О overview.fmt Указывает альтернативное расположение для файла overview.fmt. обычно используемого только для отладки. -q Запрещает выдачу сообщений о неудачном открытии lock-файлов. -s Считывает спул-каталог для всех групп новостей, упомянутых в файле active, и удаляет элементы обзора, соответствующие любым статьям, не появившимся в этом каталоге. -v Осуществляет просмотр списка элементов, предполагаемых для добавления или удаления. -z Предполагает, что все элементы для одной какой-либо группы новостей будут отсортированы и собраны вместе, что значительно облегчает их последующее удаление (см. флаг -z для expire). expire r m - удаляет статьи с истекшим сроком хранения. Синтаксис expirerm file Сценарий expirerm удаляет файлы из указанного списка file. Содержимое списка сортируется и затем передастся ио конвейеру собственно для последующего удаления утилите fastrm. Если при удалении файлов возникают проблемы, администратору службы новостей направляется почтовое сообщение. В противном случае file переименовывается и в целях безопасности сохраняется в ^pathlog in inn.conf>cxpire.list до следующих манипуляций, сии шнных с истечением срока хранения статей новостей.
II. Команды 235 ехрг вычисляет гыра Синтаксис ехрг expression ехрг option Любое выражение expression содержит числовые или строковые операнды Команда ехрг поддерживает обычные числовые операторы (в порядке возрастания приоритета), сравнение (сопоставление) с шаблоном и другие строковые операторы. Строковые операторы имеют более низкий приоритет. Команда ехрг также поддерживает логические связи и отношения, у которых более высокий приоритет, чем у строковых или числовых операторов. Опции —help —version Пр ер Печатает сообщение об использовании и завершает команду. Печатает информацию о версии. и Terminal _ п X File Edit Settings Help [mishaSsofia ~]$ ехрг 100/2+1 51 [mishaQsofia "]$ I Л / fastmail - быстрый почтовы" терфейс в пакетном режиме. Синтаксис fastmail [-b bcc-list}]-c cc-list][-C comments] [-d] [-f fromname] [-i msg-id] l-r replyto][-R references] [-s subject] filename\~ address-list Низкоуровневый интерфейс к почтовой системе, позволяющий выполнить пакетную обработку электронной почты. Предназначен для рассылки срочных почтовых сообщений большой группе людей, чьи адреса содержатся в address-list. ции -b bcc-lisl Отправляет "слепые копии" по указанному списку адресов bcc-list. -с cc-list Отправляет копии по указанному списку адресов cc-lisi. -С comments Разрешает добавить строку Comments: к заголовку R.FC822 с произвольным текстом comments. -d Устанавливает отладочный режим. -ffromname Заменяет указанное в строке From: (or кого) имя иолыоиакчя на fromname.
236 II Команоъ» -i msg-id Устанавливаег значение msg-id в строку Message-ID заюловка почтового сообщения. -г repfyto Устанавливает значение replylo в строку Rcply-TO: заголовка почтового сообщения. -R references С помощью параметра references устанавливает текст описания/ссылки для данного почтового сообщения. -s subject С помощью subject определяет тему почтового сообщения. Аргумент filename указывает имя файла, содержащею рассылаемые сообщения. Если вместо имени файла стоит дефис, будет предложено ввест и прямо с консоли текст почтового сообщения. Команду fastmail удобно применять в сценариях. П имер $ fastmail -b mishaEa -г rootija mainletter sofiafa $ Здесь переменная а ранее определена с помощью команды alias и составляет часть почтового адреса. fastrm - служит для быстрого удаления набо а файлов. Синтаксис fastrm l-d][-e] [-uW] [-s/f] [-cl] base_directory Считывает со стандартного ввода список файлов или маркеров статей по одному элементу в строке и удаляет их. Если файл задается абсолютным маршрутом, берет маршрут относительно каталога base_directory. Параметр base directory — это абсолютный маршрут, т.е. не может содержать выражения типа /./ или /../. Предназначение fastrm - работать быстрее, чем конвейер с использованием rm. К тому же fastrm обычно переходит в требуемый каталог перед удалением файчов из него. Если входной файл отсортирован, процедура удаления очень упрощается. Помимо сказанного fastrm выполняет также системный вызов unlink (удаление ссылок) для каждого удаляемого элемента. В качестве меры безопасности, если fastrm запускается суперпользователем, он сначала должен с помощью stat убедиться, что удаляемый элемент не является каталогом, а уже потом удалять ссылку. Опции -d Устанавливает отладочный режим. Никакие файлы не удаляются: вместо этого на стандартный вывод направляется список файлов, почлежл- щих удалению, в одном из двух отладочных форматов. В первом формате каждая строка содержит текущий каталог fastrm во время проведения операции unlink и <атсм маршрут, передаваемый unlink: mi два поля разделяются пробелом и прямым слешем. Во втором формаie присутствует единственное поле - абсолютный м.\ршр\ г, но котором} б>- дет прои шодиться удаление спя ieii (ссылок).
II. Команды 237 "е Трактует пустой stdin - стандартный входной файл - как ошибку -uN Производит вспомогательную работу на дальнейшее в части рабочего окружения гак, чтобы в выходном дереве отсутствовали символические связи (ссылки). С помощью этого флага fastrm "предполагает, чго гораздо проще обратиться по маршруту ../../../, чем спускаться вниз от базового каталога root. Параметр N- целое число, указывающее максимальное количество уровней (..) маршрута. По умолчанию устанавливается -ul, если указан только флаг -и. -sM Удаляет связи (ссылки) в порядке появления файлов в каталоге. Необязательный параметр М указывает предполагаемое количество удаляемых файлов. По умолчанию устанавливается -s5, если указан только флаг -s. -с/ Флаг -с инструктирует fastrm, что предпринимать при вызове chdir (смена каталога) Если количество файлов, для которых должны быть удалены связи, меньше целого числа /, fastrm вызывает chdir и удаляет связи файлов из этого каталога. В противном случае она выстраивает маршрут относительно своего текущего каталога. Если задан только флаг -с, по умолчанию предполагается -cl; в этом случае fastrm всегда будет использовать chdir. Если флаг -с вообще не задан, предполагается значение -сЗ. Указание -сО препятствует вызову chdir. fastrm завершается с кодом 0, если при ее работе не возникало проблем, в противном случае - с кодом 1. Удаление несуществующих файлов считается проблемой. fClfOrmSt - выполняет низкоуровневое форматирование гибких дисков. Синтаксис fdformat [-n] device Обычно в качестве имен дисководов для гибких дисков применяется /dev/fdO и /dev/fdl. On ии _п После форматирования не осуществляет верификацию (контрольную проверку гибких дисков). fdlSk манипулирует таблицей разделов жесткого диска К. для Linux. Синтаксис fdisk [-ull-b sectoreize] device fdisk -1 [-u][-b sectorsize][device... ]
238 It Команды fdisk -s partition... fdisk -v Жесткие диски (винчестеры) М01ут быть разбиты на один или более логических дисков, называемых разделами. Текущая разбивка описывается в габлице разделов, которая находится в нулевом секторе физического диска. Linux нуждается по меньшей мере хотя бы в одном разделе для корневой файловой системы. Для областей своппинга могут использоваться файлы и/или разделы, последнее предпочтительней. Кроме того, на оборудовании Intel при загрузке (особенность BIOS) могут быть доступны только первые 1024 цилиндра, что также является поводом для разделения большого физического диска на части. Хотя могут иметь место и другие причины, например соображения безопасности, когда некоторые файлы (файловые системы) желательно вынести в отдельный раздел. fdisk- базирующаяся на меню программа, предназначенная для создания и манипуляций с разделами диска. Она "понимает" таблицы разделов DOS и метки дисков BSD или SUN. Аргумент device обычно указывает устройство для следующих дисков: IDE /dev/hd[a-h] SCSI /dev/sd[a-p] ESDI /dev/ed[a-d] RAID-устройства /dev/rd/cOdO или /dev/ida/cOdO Имя устройства относится к полному диску. Раздел - это имя устройства, за которым следует номер раздела. Например, /dev/hda3 - это третий раздел жесткого IDE- диска. Метки типов дисков BSD/SUN могут описывать до восьми разделов, третий из которых - раздел полного диска, метки типов дисков IRIX/SGI могут описывать до 16 разделов, одиннадцатый - заголовок тома. Если на жестком диске приходится создавать разделы разных файловых систем - DOS, Windows 95, OS/2 и т.д. - рекомендуется создавать разделы DOS программой DOS FDISK, а разделы Linux - программой Linux fdisk или Linux cfdisk. Опции -v Выводит информацию о версии программы fdisk и завершает ее. -1 Информирует о содержимом таблиц разделов указанных устройств и завершает программу. Если никакие устройства не заданы. использ\ ет- ся информация из /proc/partitions, если таковая имеется. -и В листинге содержимого таблиц разделов показывает размеры разделов в секторах вместо цилиндров. -b sectorshe Указывает размер дискового сектора. Принятые размеры -512, 1024, 2048. -s partition Распечатывает на стандар гный вывод размер ука lainioro раз \счл в блоках. После гапуска программа fdisk выводит командное приглашение. Команда m позволяет распечатать меню (список) команд. Ниже перечислены основные команды fdisk:
II. Команды 239 а включает флаг загружаемого раздела b редактирует дисковые метки (BSD) d удаляет раздел 1 распечатывает существующие гипы разделов m выводит экранную подсказку п добавляет новый раздел р печатает таблицу разделов q завершает работу программы без сохранения изменений t меняет системный идентификатор раздела v проверяет таблицу разделов w записывает таблицу разделов на диск и завершает работу Пример # fdisk -1 Disk /dev/hda: 64 heads, 63 sectors, 825 cylinders Units = cylinders of 4032 * 512 bytes Device Boot /dev/hdal * /dev/hda2 /dev/hda5 /dev/hda6 Start 1 154 154 800 End 153 825 799 820 Blocks 308416+ 1354752 1302304+ 42304+ Id 6 5 83 82 System FAT 16 Extended Linux Linux swap Disk /dev/hdc: 64 heads, 63 sectors, 1022 cylinders Units = cylinders of 4032 * 512 bytes Device /dev/hdcl /dev/hdc2 /dev/hdc5 t Boot * * Start 1 611 611 End 610 1020 1020 Blocks 1229728+ 826560 826528+ Id b 5 b System Win95 FAT32 Extended Win95 FAT32 В этом листинге описаны два диска IDE (/dev/hda и /dev/hdc). В разделах первого из дисков содержатся файловые системы DOS (FAT 16) и Linux. В разделах второго - Windows 95 (FAT32). Устройство /dev/hda6 выделено для области своппинга (подкачки) Linux. fetchmail выбирает почту с серверов POP, IMAP или ETRN. Синтаксис fetchmail [option][mai'server...] fetchmailconf Выбирает почту с дистанционных почтовых серверов mailsei ver и пере щет ее системе доставки на локальной клиентской машине. Далее почьюкатель может выора1ь почтовые сообщения с помощью таких почтовых агентов как elm или mail.
240 II Команды Утилита fctchmail может быть запущена в режиме демона для периодического опроса дистанционных сисгем. Она может собирать почту с серверов, поддерживающих общие почтовые протоколы, а именно: РОР2, РОРЗ, IMAP2bis, 1MAP4, IMAPrevl и расширение ESMTP ETRN. Поскольку изначально fetchmail предназначалась для таких TCP/IP связей, как подключение SLIP или РРР, она может быть полезна в качестве агента передачи сообщений для тех сайтов, которые в целях безопасности отказываются от SMTP-транзакций через sendmail. Каждое сообщение, выбираемое fetchmail, обычно доставляется по SMTP через порт 25 вашей локальной машины, т.е. проходит по обычному каналу связи TCP/IP. Затем почта доставляется локально через системный MDA (Mail Delivery Agent- агент доставки почты), обычно в качестве такового применяется sendmail, хотя могут быть и другие варианты. Все механизмы управления доставкой, такие, как перепоручение почтовых файлов, как правило, доступны через ваш системный MDA и местных агентов доставки. Программа fetchmailconf, если доступна, устанавливает и редактирует конфигурационный файл fetchmailrc. Она требует наличия в системе пользователя языка Python и инструмента Тк. Если вы вначале устанавливаете fetchmail для режима работы единственного пользователя, рекомендуется, чтобы использовался режим Novice (для начинающих). Особенности функционирования fetchmail определяются опциями option командной строки и содержимым файла —/.fetchmailrc, причем опции командной строки перекрывают содержимое конфигурационного файла. Почти все опции имеют соответствующее ключевое слово, которое используется для их декларирования в файле fetchmailrc. -V, —version Выводит информацию о версии fetchmail. Никакой выборки почты не производится, а вместо этого программа информирует обо всех опциях, которые будут действовать в подключении. -с, —check Возвращает код возврата, сообщающий о новых поступлениях почты. Эта опция отключает режим демона, в котором она была бы просто бесполезна. -d interval, —daemon interval Запускает fetchmail в режиме демона и указывает интервал между опросами почтового сервера в секундах. -s, —silent Подавляет выдачу сообщений. -v, —verbose Направляет все информационные сообщения, которыми обмениваются fetchmail и почтовый сервер, в стандартный файл ошибок. -a, —all Доставляет как старые, уже просмотренные, так и новые сообщения с почтового сервера. Этой опции соответствует ключевое слово fctchall файла конфигурации. Не работает с ETRN. По умолчанию выбираются лишь сообщения, помеченные сервером как непросмотренные. -k, —keep Держит пришедшие почтовые сообщения на дистанционном почтовом сервере. Этой опции соответствует ключевое слово keep.
II. Команды 241 -К, — покеер Удаляет выбранные сообщения с динанционного почтового сервера. -F, -flush Предназначается только для POP3/IMAP. Перед выборкой новых сообщений удаляет с почтового сервера старые, ранее выбранные сообщения. Эта опция не работает с ETRN. -р, —protocol proto Этой опции соответствует ключевое слово ргои>[со!].Указывает протокол обмена с дистанционным почтовым сервером. По умолчанию proto устанавливается в значении AUTO. Ниже перечислены возможные значения proto: поддерживает ШАР, РОРЗ и РОР2, но пропускает любой из этих протоколов, если его поддержка не указывалась при компиляции. протокол почтового отделения 2 протокол почтового отделения 3 использует РОРЗ с аутентификацией MD5 использует РОРЗ с аутентификацией RPOP использует РОРЗ с предварительной аутентификацей Kerberos V4 на порту 1109 использует РОРЗ с расширениями SDPS для демона Internet использует IMAP2bis, IMAP4 или IMAP4revl, которые автоматически распознает использует IMAP4 или IMAP4revl, который автоматически распознает, с предварительной аутентификацией по Kerberos IMAP-GSS использует IMAP4 или IMAP4revl, который автоматически распознает, с предварительной аутентификацией GSSAP1 (RFC 1731) 1MAP-CRAMMD5 использует IMAP4 или IMAP4revl, который автоматически распознает, с аутентификацией CRAM-MD5 IMAP-LOGIN использует IMAP4 или IMAP4revl, который автоматически распознает, только с открытой аутентификацией при регистрации, даже если сервер поддерживает что- нибудь получше ETRN использует ESMTPETRN. -t, —timeout seconds Устанавливает время тайм-аута (ожидания ответа серперп) в секундах. В конфигурационном файле используется ключевое слово timeout AUTO РОР2 РОРЗ АРОР RPOP КРОР SDPS IMAP IMAP-K4
242 II Команды --plugin command Для установления ГСР-нодключения разрешает ис1юлыов<нь внешнюю программу, запускаемую командой command. Поиск про1раммы производится но маршруту, указанному SPATH, и ей будет передано два аргумента: имя сервера и номер порта. Это полезно в случае использования сокетов или установки специальных брандмауэров (сетевых экранов). Используется ключевое слово plugin. -г name, —folder name Требует, чтобы на почтовом сервере корреспонденция выбиралась из указанной почтовой папки пате, хотя в качестве пате можно определить разделенный запятыми список почтовых папок. Используется ключевое слово foldcrfs]. Эта опция недоступна для РОРЗ или ETRN. —ssl При подключении к почтовому серверу предлагает применять шифрование через SSL. Используется ключевое слово ssl. —sslcert name Указывает имя файла со стороны клиента, содержащего общий сертификат SSL. Во многих случаях задавать эту опцию необязательно. Используется ключевое слово sslcert. —sslkey name Указывает имя файла со стороны клиента, содержащего общий ключ SSL. Во многих случаях задавать эту опцию необязательно. Используется ключевое слово sslkey. -S hosts, —smtphost hosts Определяет разделенный запятыми список узлов, которыми может бить получена почта. Каждый элемент списка помимо имени узла может содержать определяемый наклонной чертой номер порта. По умолчанию принят порт за номером 25. Обычно по умолчанию в конец списка добавляется localhost (локальный узел). Но если используется режим ETRN или аутентификация по Kerberos, по умолчанию в конец списка добавляется FQDN сетевого узла, запустившего fetchmail. Используется ключевое слово smtp[host]. -D domain, — smtpaddress domain Указывает домен, который берется для заполнения строк RCPT ТО (получателю) по протоколу SMTP. Если опция не задана, используется имя SMTP-сервера, определяемого опцией —smtphost, или же берется по умолчанию localhost. -m command, — mda command Направляет почту непосредственно MDA (Mail Delivery Agent - агент) доставки почты). С помощью команды command можно запустить такие MDA: /uer/sbin/sendmail -oem -f %F %Т /usr/bin/procmail -d %T
243 В MDA-команду вместо %'Г будут включены локальные алреса доставки, a BMecro%F - почтовый адрес From (от кото). Используется ключевое слово mda. -1 maxbytes, —limit maxbytes Определяет максимальный размер выбираемого сообщения. I Гочт овые сообщения, размер которых превышает указанный, не выбираются, не помечаются как просмотренные и остаются на сервере. Используется ключевое слово limit. b count, —batchlimit count Указывает максимальное количество сообщений, которые могут быть переданы на прослушивание SMTP до того, как подключение специально будет прервано и перестроено. Используется ключевое слово batchlimit. Эта опция не работает с ETRN . -В number, —fetchlimit number Ограничивает с помощью значения number количество сообщений, принимаемых с заданного сервера за один опрос. По умолчанию ограничений не существует. Используется ключевое слово fetchlimit. Если значение number установлено в 0, будут перекрыты любые пределы, указанные в управляющем файле. Эта опция не работает с ETRN. -u name, — username name Указывает имя пользователя, используемое для регистрации на почтовом сервере. По умолчанию используется ваше имя на клиентской машине, где запущена fetchmail. Ключевое слово - user[name]. -I specification, —interface specification Перед опросом проверяет, чтобы существующий интерфейс к почтовому серверу имел IP-адрес, заданный параметром specification. Обычно fetchmail напрямую устанавливает связь с почтовым сервером типа точка-точка, используя SLIP или РРР. Но могут существовать и другие TCP/IP маршруты к почтовому серверу. Применяется спецификация следующего формата: interf ace/iii. iii. iii. iii/mmm .minin .mmm.mmm Поле interface задает имя интерфейса, например. slO или рррО, pppl и т.д. Поле между двумя наклонными собственно и является обычным IP-адресом. Поле за второй наклонной - это маска, указывающая диапазон принимаемых IP-адресов. Если маска не задана, принимается значение 255.255.255.255. Используется ключевое слово interface. -f pathname, —fetchmailrc pathname Указывает имя управляющего файла .fetchmailrc, отличающееся от принятого по умолчанию. Если в качестве аргумента pathname стоит дефис, считывает стандартный ввод. Рекомендованные полномочия на этот файл устанавливаются в 0600, т.е. u=rw, g=, o=.
244 II Команды -i paihname>, — idfile pathname Указывает альтернативное имя файла .fetchids, используемого для сохранения UIDs (идентификаторов пользователей) при подключении через РОРЗ. Используется ключевое слово idfile. -configdump Проводит синтаксический контроль содержимого файла -/.fetchmailrc, интерпретируя указанные опции командной строки. Выводит на стандартный вывод отчет о конфигурации в виде структуры данных языка Python. В каждом режиме кроме ETRN требуется аутентификация клиента. Обычная аутентификация пользователей в fetchmail очень похожа на механизм аутентификации ftp. Если вы используете одинаковые имена при регистрации на сервере и на клиентской машине, вам не о чем беспокоиться: по умолчанию ваше регистрационное имя на клиентской машине будет принято в качестве идентификатора пользователя на сервере. С помощью опции -d interval, или —daemon interval, можно запустить fetchmail в режиме демона. Здесь аргумент interval определяет интервал в секундах между опросами почтового сервера. В режиме демона fetchmail сама себя запускает в фоновом режиме. Пример $ fetchmail -d 600 Этот краткий вызов определяет, что fetchmail будет запущена в режиме демона. f CJ - запускает прерванный процесс в режиме перед- В него плана. Синтаксис fg I JOBSPEC] Команда fg встроена в командный процессор, или оболочку bash. Прервав процесс JOBSPEC при нажатии Ctrl+Z, можно затем перевести его в режим переднего плана (основной, или приоритетный, режим) с помощью fg. Если аргумент JOBSPEC не задан, переводится текущее задание. *С|éР- о .на из разновидн» -~ поисковой команды дгер. К Команда fgrep - это то же самое, чга grep -F (см. команду grep). Работает с шаблоном, являющимся списком фиксированных строк, разделенных символом newline, любая из строк должна быть сопоставима (найдена). Следует отметить, что fgrcp не рабо1ает с регулярными выражениями. Она удобна для поиска строк, содержащих символ обратной наклонной черты, звездочки и др\ гне символы, которые обычно приходится заключать и кавычки.
II. Команды Пример Предварительно распечатаем файл priin<>4, содержащий образцы поиска для файла prim62: $ cat prim64 cvv * puts $ fgrep -f prim 64 prim62 cccvv inputs=5 B=5*6 $ file - onpeflej-- , указанного файла. К Си ксис file [-bcinsvzL][-f namefile][-m magic files] file... Программа file тестирует каждый заданный файл/z/e, пытаясь классифицировать его. Прежде всего устанавливается тип файла. Часто для этого приходится проверять magic numbers (магические числа): первые шестнадцать бит файла содержат кодированную информацию о типе этого файла. С помощью файла /etc/magic или /usr/share/magic ядро системы интерпретирует кодированную информацию, пытаясь определить тип файла. Если был обнаружен ASCII-файл, команда также пытается определить язык текстового файла, анализируя строки нескольких первых блоков файла. Опции -Ь В выводимых строках не печатает имен файлов (краткий режим). -с Обычно используется совместно с опцией -т, чтобы отладить новый файл magic перед его включением в систему. Способствует синтаксическому анализу файла magic. -f пате/ile Вместо командной строки считывает список указанных файлов (по одному в каждой строке) из файла namefile. Если вместо имени файла стоит дефис, тестирует стандартный ввод. -i Сообщает mime-тип файла (text/plain и т.д.) -m magicfiles Указывает альтернативный список файлов, содержащих magic numbers (магические числа). В качестве разделителя имен файлов в списке использует двоеточие. -п Сбрасывает (освобождает) содержимое стандартного вывода после проверки файла. Это полезно лишь в случае проверки списка файлов. -v Выводит информацию о версии программы и завершает ее. -z Пы гается тестировать сжатые файлы.
246 -s Анализирует помимо обычных также и специальные файлы. -L Следует символическим ссылкам. Пример В командной строке tile указано несколько имен файлов разного типа: $ file lex.yy.c lexout mainletter proba.tiff lex.yy.c: С program text (from flex) lexout: ELF 32-bit LSB executable, Intel 80386, version 1, dynamically linked (uses shared libs), not stripped mainletter: ASCII text proba.tiff: TIFF image data, big-endian $ Команда file достаточно "интеллектуальна". Она не просто определяет, что lex.yy.c - текстовый файл на языке С, но в состоянии проанализировать, что он создан с помощью flex. filechan - буферизованный интерфейс для InterNetNews, осуществляющий запись в файлы. Синтаксис filechan [-d directory][-f fields][-m шар][-р pidfile] Считывает строки стандартного ввода и копирует некоторые поля каждой строки в файлы, имена которых определены в специальных полях строки, filechan вызывается innd для реализации подачи по частям (компонентам), хотя в этой роли ее функции ограничены: в отличие от buffchan она не обрабатывает команды входного потока. Опции -{fields filechan рассматривает входной файл как набор строк. Каждая строка содержит фиксированное число исходных полей, за которыми следует переменное количество полей, содержащих имена файлов. Все поля в строке разделены пробелами. По умолчанию число исходных полей равно 1, с помощью fields можно указать требуемое количество. -d directory Указывает каталог directory, куда программа записывает свой вывод; га? умолчанию - в <pathoutgoing in inn.conf>. -р pidfile Программа filechan запишет строку, содержащую ее PID, в файл pidfile. -m map Использование файла отображения тар задается с помощью флага -т. См. описание этой опции для команды buffchan. Записывая строки в файл, filechan открывает его в расширенном режиме и затем пытается заблокировать, чтобы сменить владельца файла и его групп) на владельца каталога, куда производится запись. Пример Программа filechan вызмшгась с опцией -f 2 и получила следующий исходным файл:
II Команды 247 news/hardware/c/144 993efunnary.ob.ed ton push copy news/software/c/140 18476news.foo.com push copy news/sources/linux/2001 1028ienews.linux.com torn copy Тогда в файле torn возникнут такие строки: news/hardware/c/144 993§funnary.ob.ed news/sources/linux/2001 10281Snews.linux.com В файле push соответственно следующие: news/hardware/c/144 9936funnary.ob.ed news/software/c/140 1847enews.foo.com И, наконец, в файле сору появится такое содержимое: news/hardware/c/144 993efunnary.ob.ed news/software/c/140 1847enews.foo.com news/sources/linux/2001 1028ienews.linux.com НПО - п оизво ит поиск файлов в »е§еве каталогов. К. Синтаксис find [path...]{expression] Команда find может производить поиск файлов по маршруту path по многочисленным критериям: О по имени файла или шаблону имени Q по ссылкам Q тех, которые использовались в определенный промежуток времени Q по размеру Q по типу О по владельцу или группе Q с определенными полномочиями доступа D содержащих текст, совпавший с указанным шаблоном Q по местонахождению в дереве каталогов (по глубине вхождения в структуру каталога) Q по комбинации перечисленных условий Так называемое expression (выражение) состоит из опций командной строки, тестов, которые возвращают значение истинно или ложно, и действий. Основные опции -daystart В качестве точки отсчета времени принимает начало дня. -depth Обрабатывает содержимое каждого подкаталога перед обработкой собственно каталога, -follow He следует при поиске символическим ссылкам, -help, -help Печатает перечень опций командной строки и мнеримег мргарпмм}.
248 II Команды -maxdepth levels Производит поиск в дереве каталогов не глубже yKajaiiHoro уровня levels. -mindepth levels Производит поиск в дереве каталогов уровня levels и глубже. -mount He выполняет поиск в каталогах других файловых систем. -version, —version Печатает номер версии программы find и завершает ее. Тесты +и -и п -amin и -anewer file Больше, чем и, где и - числовой аргумент. Меньше, чем и, где я - числовой аргумент. Равно и, где и - числовой аргумент. Поиск файла, к которому было обращение и минут тому назад. Поиск файла, доступ к которому производился после того, как он был модифицирован. Поиск файла, к которому производилось обращение и*24 часов тому назад. Поиск файла, состояние которого было последний раз изменено и минут тому назад. Поиск файла, состояние которого последний раз изменялось после того, как указанный файл/?/е был модифицирован. Поиск файла, состояние которого было последний раз изменено и*24 часов тому назад. Поиск обычного пустого файла или пустого каталога. Всегда ложно - условие, которое никогда не выполняется. Поиск файлов в файловых системах указанного типа tvpe. С помощью команды find -printf %F можно увидеть ваши типы файловых систем. Поиск файла, принадлежащего группе, числовой идентификатор которой равен п. group gname Поиск файла, принадлежащего группеgname. •ilname pattern Подобен тесту -Inarae, но при сопоставлении шаблона регистр букв игнорируется. iname pattern Подобен тесгу -name, но при сопоставлении шаблона регистр букв игнорируется. inum и Поиск файла, индексный дескриптор которого равен п. ipath pattern Подобен тесту -path, но при сопоставлении шаблона pei истр б) кв игнорируется. -ahme и -cnewer file -ctime n -empty -false -fstype type -gidn
II. Команды 249 -iregex pattern Подобен тесту -regex, но при сопоставлении шаблона регистр букв игнорируется. -links n Поиск файла, на который указывают и ссылок. -Iname pattern Поиск символических ссылок, имена которых соответствуют шаблону pattern. -mmin и Поиск файла, содержимое которого модифицировалось п минут тому назад. -mtime и Поиск файла, содержимое которого модифицировалось и *24 часа тому назад. -name pattern Поиск файла, базовое имя которого соответствует заданному шаблону pattern. -newer file Поиск файла, который модифицировался позже, чем указанный файл/?/е. -nouser Поиск файла, принадлежащего несуществующему пользователю. -nogroup Поиск файла, принадлежащего несуществующей группе. -path pattern Поиск имени файла по указанному шаблону оболочки. -perm mode Поиск файла с заданными полномочиями в восьмеричной или символьной форме. -perm -mode Устанавливает для файла все биты полномочий mode. -perm +mode Устанавливает для файла любой бит полномочий mode. -regex pattern Поиск файла, имя которого совпадает с регулярными выражением pattern. Маршрут в этом случае должен полностью совпасть, т.е., чтобы отыскать файл по имени ./stdar можно указать регулярное выражение .*dar, но нельзя задавать - d.*ar. -size n[bckw] Поиск файла указанного размера п. Приняты следующие единицы измерения: b блоки размером в 512 байт с байты к килобайты w слова размером 2 байта -true Всегда истинно - условие, которое всегда выполняется. -type с Поиск файла заданного типа с. Приня i ы следующие типы файлов: b блочно-специальный с символьно-специальный d каталог р именованный канал (буфер FIFO) f обычный файл 1 символическая ссылка s сокег
250 II Команды -uid и Поиск файла, принадлежащею владельцу, идентификатор которого равен л (числовое значение). -used и Поиск файлов, к которым были обращения в последние я дней после изменения их статуса. -user uname Поиск файла, принадлежащего владельцу ипате. -xtype с Подобен тесту -type с той лишь разницей, что искомый файл является символической ссылкой. Поиск символической ссылки, указывающей на файл типа с, если не задана опция -follow. Действия -exec command ; Выполняет команду command. Возвращает значение true (истинно) в случае нулевого кода завершения. Все последующие аргументы команды find рассматриваются как аргументы command пока не встретится точка с запятой, завершающая список аргументов. Строка вида {} замещается именем текущего обработанного файла. -fls file Возвращает true. Действует подобно -Is, но производит запись результата в файл file подобно -fprint. -fprint file Возврашает true. Выводит полное имя файла в файл file. Если file не существует, создает его. В противном случае — "портит" существующий файл (пишет в начало файла). -fprintO file Возвращает true. Действует подобно -printO, но производит запись результата в файл file, как -fprint. -fprintf file format Возвращает true. Действует подобно -printf, но производит запись результата в файл/?/е, подобно -fprint. -ok command ; Действует подобно -exec, но требует подтверждения пользователя. Если ответ не начинается с буквы у, или Y, не выполняет command а возвращает false (ложно). -print Возвращает true. Направляет на стандартный вывод полное имя файла, за которым следует newline. -printO Возвращает true. Направляет на стандартный вывод полное имя файла, за которым следует символ 0. Это позволяет программам, которые обрабатывают вывод команды find, корректно интерпретировать имена файлов. -printf format Возврашает true. Печатает на стандартный вывод строку format, интерпретируя заданные в ней управляющие последовательности и директивы; очень напоминает функцию printf языка С. В огличне от -print действие -printf не добавляет в конце строки символ newline. -Is Возврашает true. Отображает текущий файл в формате команды Is -dils.
II. Команды Пример Команда find запускается в фоновом режиме, а результаты своей работы направляет в файл result. Преимуществом такого запуска является то, что пользователь может продолжить свою работу, не дожидаясь завершения поиска. $ find . -name prim32 -print>result S $ А теперь суперпользователь хочет отыскать в своем текущем каталоге (/root) все обычные файлы, принадлежащие пользователю misha. * find . -user misha -type f -print ./rab/home/misha/.bashhlstory ./rab/home/misha/home/miBha/.baEh history ./prim67 ,/prim68 ./photo23.gif ./photo24.gif ./photo25.gif ./photo26.gif ./photo27a.gif ./photo34.gif ./photo35.gif t TinCJGr - программа получения информации о пользова- К. теле. Синтаксис finger [-lmsp][user...][userQhost... ] Запущенная без каких-либо опций finger no умолчанию создает вывод в стиле опции -1, а также печатает информацию о каждом пользователе, зарегистрированном в системе в настоящее время, в противном случае - в стиле опции -s. С помощью finger можно просматривать пользователей на локальной и на дистанционной машинах. Можно указать пользователя в формате user@host, что по умолчанию соответствует выводу в стиле опции -I, или в формате @host, что по умолчанию соответствует выводу в стиле опции -s. Опция -1 - это единственная опция, которая может быть передана на дистанционную машину. Опци Выводит имя пользователя при регистрации, настоящее имя, имя терминала и статус записи (в виде символа * после имени терминала, если отсутствуют полномочия на запись), время простоя, время регистрации, местонахождение офиса и его номер телефона. Время регистрации выводится в виде месяца, дня, часов и минут лишь в том случае, если регистрация производилась не более почугода тому назад. В противном случае вместо ука <ания часов и минут выводи гея год.
252 II Команды -1 Помимо информации, создаваемой онциуй -s, также выводит исходный каталог пользователя, его домашний телефон, заданную при pel нстра- ции оболочку (командный процессор), состояние почты, а также содержание его файлов .plan, .project и .forward. Многие пользователи не создают эти файлы, поэтому соответствующая информация может отсутствовать. -р При использовании опции -1 запрещает выводить содержание файлов .plan и .project. -m Запрещает производить сопоставление (поиск) имен user, определяющих регистрационные имена пользователей, хотя в отсутствие опции -т, это могут быть настоящие имена. Поиск имен нечувствителен к регистрам. Примеры Ниже дважды запущена команда finger: первый раз для еще не зарегистрировавшегося пользователя, второй раз — для уже зарегистрировавшегося. | root@localhost.localdomein:/root :-, и x Шайл Правка Settings Справка [rootdlocalhost /root]» firmer -1 misha Login: misha Name: mishae] Directory: /home/misha Shell: /bin/bash Last login Sun Jul 2 19:05 <EEST> on tt«2 Neu mail received Tue Jul 11 18:13 2000 <EEST> Unread since Mon Jul 10 19:57 2000 (EEST) No Plan. [rootSlocalhost /root]* finger -1 misha Login: misha Name: mishael Birectora: /home/misha Shell: /bin/bash On since Ued Jul 12 11:04 <EEST) on tta2 16 seconds idle New mail received Tue Jul 11 18:13 2000 (EEST) Unread since Mon Jul 10 19:57 2000 (EEST) No Plan. [rootQlocalhost /root]* J / Система фиксирует 16 секунд простоя для пользователя misha, зарегистрировавшегося на терминале tty2. flex ускоренный генератор программ лексического анализа. Синтаксис flex [option][filename ] Генератор flex - это инструмент, создающий программы распознавания образцов в текстовом файле, flex считывает заданный входной файл filename или стандартный нвоц. если имя файла не определено, в поисках описания, какого рода npoi рамму-сканер предстоит создать. Описания представляют из себя нары pci улярных выраженнй и С-кода.
II. Команды 253 называемые правилами, flex генерирует свой вывод в виде исходно! о файла на я шке С - lex.yy.c. Этот файл должен быть откомпилирован и скомпонован (с опцией -1П). После запуска полученного исполняемого файла программа-сканер анализирует и ищет строки, сопоставимые с указанным регулярным выражением. Если таковые найдены, выполняет С-код, соответствующий заданному правилу. По умолчанию любой текст, не сопоставленный с помощью flex-сканера, просто копируется в выходной файл. Начало правила отмечают два символа %%. Если при сравнении с шаблоном найдено более одного сопоставления, берется вариант с текстом большей длины. В случае обнаружения нескольких сопоставлений одинаковой длины, берется первое найденное. Каждому шаблону в правиле соответствует действие, которое воплощается в виде произвольного оператора языка С. Основные опции -Ь Генерирует информацию в виде списка состояний сканера, а также отражает входные символы, на основании которых была создана эта информация. -d Переводит сгенерированный сканер в режим отладки. -f Генерирует "быстрый" сканер: не производит сжатия таблиц и обходит стандартные операции ввода-вывода. -h Выводит информацию об опциях flex и завершает выполнение программы. -i Генерирует сканер, нечувствительный к регистру: регистр букв во входных шаблонах игнорируется, а маркеры во входном файле будут сопоставляться, невзирая на регистр. -р Создает отчет по производительности обработки и направляет его в стандартный файл ошибок. -s Подавляет default rule - правило, принятое по умолчанию. -t Вместо того, чтобы записать сгенерированный сканер в файле Icx.yv.c, направляет его на стандартный вывод. -v Записывает в стандартный файл ошибок статистику, создаваемую сканером. -w Запрещает вывод предупреждающих сообщений. -В Создает пакетный сканер. -F Использует альтернативную таблицу сканера для ускоренного представления. -I Создает интерактивный сканер. _L He генерирует директив #line. Без этой опции Псх создает сканер с директивами #line, так что при нахождении ошибок в указанных действиях пользователь будет уведомлен об их местонахождении в оригинальном входном файле. _Т Запускает Псх в режиме i расспровки. .V Выподиг информацию о версии npoi раммы и завершает ее выполнение.
254 II. Команды -7 Генерирует 7-бигный сканер. Основное преимущество состоит в том, что размер таблиц сканера сокращается чуть ли не вдвое. -8 Генерирует 8-битный сканер (по умолчанию). -+ Генерирует сканер на языке C++. -ooutput Записывает созданный сканер в файл output. -Pprefix Меняет заданный по умолчанию префикс уу, который используется для наименований глобальных переменных и функций, на указанный prefix. -Sskeleton Указывает базовый файл, перекрывающий заданный по умолчанию, --help Выводит краткое описание опций, —version Выводит информацию о версии программы. Входной файл Псх состоит из трех секций, разделяемых строкой, содержащей только символы %%. Первая секция - definitions - содержит описания декларируемых имен. Ее формат таков: имя определение Здесь имя - это слово, начинающееся с буквы или символа подчеркивания, далее следуют буквы, цифры, символы подчеркивания и дефисы. В свою очередь определение может включать новое имя и определение. Вторая секция - rules (правила) - содержит набор правил следующего формата: шаблон действие Наконец, секция кода пользователя просто копируется в файл lex.yy.c, она используется для утилит, которые вызывают сканер или вызываются из него. Эта секция не обязательна; если она отсутствует, может также отсутствовать строка со вторым набором %%. Шаблоны входного файла записываются с использованием расширенного набора регулярных выражений. Вот они: х сопоставляет символ х . (точка) любой символ кроме newline (новой строки) [xyz] класс символов; шаблон сопоставляет либо х, либо у, либо z [AA-Z] "отрицательный" класс символов; в этом случае сопоставляются любые символы кроме прописных букв латинского алфавита [AA-Z\n] любой символ кроме прописных букв или newline г* ноль или более повторений г, где г - любое регулярное выражение г+ одно или более повторений г г? ноль или одно повторение г г{3,7} любое г, лежащее в диапазоне от 3 до 7 \0 нулевой символ (ASCII-код О) \156 восьмеричное значение 156 \х7Ь шестнадцатернчное значение 7Ь rs конкатенация двух регулярных выражений г и s
II. Команды 255 r|s либо г, либо s r/s сопоставляет г, если далее следует s Аг сопоставляет г только в начале строки г$ сопоставляет г только в конце строки <s>r сопоставляет г только в стартовом условии s «EOF» конец файла В действиях встречаются специальные директивы: ECHO копирует yytext (текстовую переменную) в выходной файл сканера BEGIN за этой директивой следует наименование стартового условия, куда помещается сканер REJECT при сопоставлении входного файла просит сканер перейти на "второе лучшее правило"; это может быть правило, сопоставляющее такой же по величине текст, как и оригинальное, но встречающееся далее во входном файле flex, или правило, сравнивающее несколько меньший текст уутоге( ) сообщает сканеру, что при следующем сопоставлении соответствующий маркер будет добавлен к текущему значению переменной yytext вместо ее замещения yyless(n) возвращает п первых символов текущего маркера во входной поток, откуда они будут повторно сканироваться при следующем сравнении; если параметр л равен 0, полная текущая входная строка будет сканироваться повторно input( ) считывает следующий символ входного потока unput (с) возвращает символ с обратно во входной поток, этот символ будет следующим сканируемым символом yyterminate( ) останавливает работу сканера и возвращает нулевой код программе, вызвавшей этот сканер; по умолчанию эта директива срабатывает по концу файла. Пример Файл prim88 подается на вход команде flex. $ cat prim 88 %% с I ср | срр |ECHO; REJECT; .|\n $ flex -I prim88 $ gcc lex.yy.c -lfl -o lexout $ В результате выполнения этих команд создается исполняемый файл Icxout, содержащий программу-сканер.
256 II Команды форматирует текстовые фа" i - fmt [-number][option]...[file]... Утилита fmt оперирует такими текстовыми конструкциями, как абзацы. Перенос оиа осуществляет по словам, а не просто разбивает концы длинных строк. Пустую строку воспринимает как конец абзаца. Эту утилиту можно применять для форматирования строк почтовых сообщений или строк файлов, которые редактируются с помощью редактора vi. Она также незаменима при написании программ для командного процессора (оболочки) и во всех тех случаях, когда приходится иметь дело со слишком длинными строками, не помещающимися на экране, или, наоборот, со слишком короткими. Утилита fmt читает данные из файлов file или со стандартного ввода, если имена файлов не заданы или вместо них стоит дефис, и записывает информацию на стандартный вывод. По умолчанию в выходном файле сохраняются пустые строки, пробелы между словами и отступы. Опции -с, —crown-margin Сохраняет отступы двух первых строк абзаца. -р, — prefix=string Обрабатывает лишь строки, начинающиеся с выражения string. -s, —split-only Разбивает длинные строки, но не заполняет их. -t, —tagged-paragraph Выделяет начало абзаца отступом в первой строке ("красная" строка). -u, —uniform-spacing Устанавливает один пробел между словами и два - между предложениями. -w, — width=numier, -number Устанавливает длину строки в значение number По умолчанию - 75 символов. —help Выводит справку по опциям программы и завершает ее работу. —version Выводит информацию о версии программы и завершает ее работу. Приме Выделим и распечатаем строки комментариев из программы на языке С. $ fmt -p '*' prog.с * Эта программа считывает входной файл, * отбирая из него строки * для загрузки в БД. $
II. Команды ТОЮ преобразует каждую входную строку файла в соот К ветствии с указанной шириной. т- ис fold [option] ...[fНе] Преобразует входные строки каждого файла file (по умолчанию стандартного ввода), а затем записывает их на стандартный вывод. Опции -b, —bytes Подсчитывает количество байтов вместо количества столбцов (символов) в строке. При этом также учитываются управляющие символы, -s, —spaces Разрывает строки только на пробелах. -w, ~width=vvK#A Устанавливает ширину строки. По умолчанию принимается 80 символов. —help Выводит список опций и завершает выполнение программ. —version Выводит информацию о версии программы и завершает ее. formail - форматирует (реформатирует) информацию в фор мат почтового ящика. Синтаксис formail [+skip] [-total] [-vbczfrktedqY][-p prefix] [-D maxlen idcache] 1-х headerfield]]-* headerfield] [ -a headerfield][-h headerfield] [-i headerfield] [-1 headerfield] [-u headerfield] [-U headerfield] [ -R oldfield newfield] [ -n [maxprocs ] ] [ -s [ command [ arg...]]] "Ожидает" информацию стандартного ввода, чтобы преобразовать ее в формат почтового ящика, создать заголовки автоответа. Опции -v Выводит информацию о версии formail и завершает ее работу. _Ь Не отбрасывает никакие фиктивные заголовки почтового ящика, так называемые строки, начинающиеся с From. -р prefix Определяет префикс цитируемых частей. Если данная опция не указана, назначает символ >. -Y Предполагает традиционный формат почтового ящика Berkeley (Беркли), игнорируя любые поля Content-Length: (длина содержимого). -с Соединяет! поля продолжений в заголовке (поля заголовка, занимающие более одной строки).
258 II Команды -z Гараншруег наличие пробела (неиюбражаемою символа тигга whitespace) между полем имени и содержанием. -f Игнорирует строки не в формате почтового яшика. -г Создает заголовок автоответа. -к При создании заголовка автоответа или при извлечении полей сохраняет тело сообщения. -I Доверяет отправителю, предлагающему использовать обратный адрес из его заголовка: выбирает информацию из header sender (заголовок отправителя) вместо envelope sender (конверт отправителя). -s [command [arg...]~\ Разбивает входной файл на отдельные почтовые сообщения и передает их но конвейеру одно за другим, каждое своей программе. Опция -s — последняя опция командной строки. Первый из аргументов, следующий за ней, рассматривается как имя программы command, другие аргументы arg просто будут переданы программе. Если программа не указана, formail вновь "склеит" разбитую на части почту. -п [maxprocs] Предлагает formail не ждать завершения каждой программы до старта следующей. Предполагает параллельное выполнение процессов. Необязательный параметр maxprocs указывает максимальное число конкурирующих процессов. -е Не требует, чтобы заголовку нового сообщения предшествовали пустые строки, хотя по умолчанию делается именно так. При задании опции -с каждое сообщение сразу следует за другим. -d Сообщает formail, что сообщения, которые предполагается разбить на части, вовсе не должны быть в формате почтового ящика, т.е. позволяет разделить на части цифровую информацию, статьи или файлы нестандартного (для почты) формата, отменяет распознавание поля Content-Length:. -m minfields Указывает число (по умолчанию 2) последовательных полей заголовков, встретив которые formail "решает", что начинается новое сообщение. -q Запрещает сообщать об ошибках записи, дублирующихся сообщениях и некорректных полях Content-Length:. Эта опция действует по умоч- чанию. Чтобы вывести такую информацию, задается опция -q-. -D maxlen idcuche Рассматривая текущее сообщение, будег проверять, используя файл idcuche (содержи i идентификаторы сообщений), не было ли ранее сообщения с таким идентификатором Mcssage-ll): приблизительно такого размера maxlen. Если разбивка не производилась, возвращает код успешного завершения в случае обнаружения дублирующихся сообщений. Если разбивка upon шодплась, не сообщает о дублировании.
II. Команды 259 При использовании совмест но с опцией -г npoi рамма formail отдает предпочтение mail address (почтовому адресу) конверта отправителя нежели взятому из Message-ID. -х headerjield Извлекает содержимое поля headerjield из заголовка и выводит его на экран в виде единственной строки. -X headerjield Аналогична опции -х, но вдобавок сохраняет имя поля. -a headerjield Добавляет к заголовку пользовательское поле headerjield при условии, что таковое ранее не существовало. Если пользователь указал одно из имен нолей Message-ID: или Rcsent-Message-ID: (идентификатор "негодующего" сообщения) без какого-либо содержимого, formail создаст уникальный Message-ID. -A headerjield В любом случае добавляет к заголовку пользовательское поле headerfield. -i headerfield Подобна опции -А, но вдобавок существующие аналогичные поля переименовываются, и при этом их имена получают префикс Old- (старое). -I headerfield Подобна опции -i, но существующие аналогичные поля просто удаляются. -u headerfield Рассматривает первое появление поля headerfield как уникальное и затем удаляет его последующие появления. -U headerfield Рассматривает последнее появление поля headerfield как уникальное и удаляет все его предшествующие появления. -R oldfield newfield Всякий раз переименовывает имя поля oldfield в newfield. +skip Пропускает при разбивке первые skip сообщений. -total Выводит при разбивке не более указанного количества (total) сообщений. Пример $ formail +1 -ds» mailboxl строки вводимых сообщений ctrl+D S Данная команда добавит разбиваемую на части информацию к содержимому почтового ящика mailboxl, опуская при этом первое сообщение. Если необходимо передать аналогичный вывод про1рамме procmait, следует набрать такую команду: $ formail +1 -ds procmail строки вводимых сообщений Ctrl+D $
260 II Команды forw пересылает перепорученные сообщения. Синтаксис forw l+folder) [msgs] [-annotate] [-noannotateJ [-form formfile] [-format] [-noformat] [-filter filterfHe] [-inplace] [-noinplace][-mime] [-nomime] [-draftfolder +folder][-draftmessage msg][-nodraftfolder] [-editor editor][-noedit][-whatnowproc program][-novhatnovproc] [-dashstuffing][-nodashstuffing][-build][-file msgfile][-version] [-help] forw [+folder][asgs] [-digest list] [-issue number] [ -volume number] [other__switches_for_forw] [-help] Команда forw используется, чтобы приготовить сообщение, содержащее другие сообщения. Она создает новое сообщение из файла форм (компонентов). Тело сообщения компонуется из перепорученных сообщений. Затем с помощью сошр вызывается редактор. После того, как редактирование будет выполнено, но сообщение еще не отослано, приглашается пользователь. Хотя команда forw использует файл форм для конструирования начала предварительного сообщения, она также использует фильтр сообщений - файл, определяющий, как должно быть отформатировано каждое перепорученное сообщение для включения в тело предварительного. Опции -form formfile Если файл forwcomps существует в пользовательском каталоге nmh (xmh), программа использует его вместо формы, взятой по умолчанию. Можно также указать файл альтернативных форм с помощью formfile. +folder Параметр folder определяет папку с сообщением. По умолчанию устанавливается текущая папка. msgs Определяет имя файла, содержащего сообщение; по умолчанию берется текущее сообщение (cur). -annotate Анногирует ниже представленными строками каждое перепорученное сообщение: Forwarded:date Forwarded:addrs Здесь addrs - список адресов, содержащий столько строк, сколько требуется. Такая аннотация будет включаться в сообщение лишь и том случае, если оно напрямую отправляется от команды forw. Если сообщение немедленно не отправляется or forw, команда comp -use может быть использована для повторного редактирования и рассылки сконструированного сообщения. Но в этом случае цнномцип не вк'почлютсч на свои обычные места. По умолчанию действует -noannotate.
II. Команды 261 -inplace По умолчанию создает аннотации на гех же местх, чтобы сохранить любые ссылки на сообщение. -noinplace Отменяет действие опции -inplace. -editor editor Указываег редактор editor, используемый для предварительного редактирования. -noedit He выполняет редактирование сообщения. -noformat Указывает, что каждое перепорученное сообщение включается в предварительное сообщение в своем первозданном виде без какой-либо фильтрации. Опция действует по умолчанию. -format Использует фильтр сообщений, заданный по умолчанию и являющийся адекватным для большинства пользователей. По умолчанию применяется фильтр mhl.forward. filter filterfile Указывает альтернативный фильтр. -nodashstuffing He отделяет каждое перепорученное сообщение от другого с помощью символа тире в первом столбце с последующим пробелом. Данный флаг подавляет возможность обращения к отдельным сообщениям; опция -dashstuf ling (по умолчанию) позволяет ссылаться на отдельные сообщения. -mime Использует правила MIME для инкапсуляции. Этот флаг вынуждает forw создавать композиционный файл mhbuild. Следует отметить, что nmh не вызывает автоматически mhbuild, в профиле .mh_profile должна обязательно присутствовать следующая строка: automimeproc: 1 В противном случае необходимо в диалоге с программой whatnow выдать следующую команду до отправки предварительного сообщения: What now? mime По умолчанию устанавливается -nomime. -draftfolder +folder Создает предварительное сообщение в указанной папке/older. По умолчанию действует -nodraftfolder. -draftmessage msg Использует указанное предварительное сообщение msg для создания текущего сообщения. -whatnowproc program После редактирования программа forw вызывает программу program, задающую вопросы "What now? (Что сейчас делать?)". Если program установлена в значение whatnow, программа forw использует встроенную программу, задающую вопросы. Если вы определили собственную программу типа whatnow, не следует ее запускать: программа forw что сделает сама.
262 II Команды -nowhalnowproc Не только запрещает вызов программы тина whatnow, но и отменяет редактирование сообщений. -build Предполагает использование интерфейса mh-c редактора Emacs к nmh. Зга возможность работает лишь тогда, когда программа nmh компилировалась с поддержкой mh-e, и подразумевает задание опции -nowhatnowproc. Предусматривает создание файла mh-dir/draft, содержащего предварительное сообщение, которое будет представлено для редактирования. Этот флаг несколько устарел и, скорее всего, исчезнет из будущих версий nmh. -file msgfile Указывает, что сообщение было перепоручено в виде имени файла вместо панки почтовой системы nmh или номера сообщения. Предполагает использование интерфейса msh к nmh и предусматривает применение опции -noannotate. Перепорученное сообщение просто полностью копируется в предварительное сообщение. Производится обработка с флагами -filter, -mime и -digest, хотя обычно leading (заголовные) и trailing (концевые) разделители для Forwarded Message (перепорученного сообщения) не добавляются. С помощью флагов -digest, -issue и -volume можно создавать дайджесты (краткие описания содержимого), предусмотренные в nmh (xmh). Остов стандартного сообщения располагается в файле /etc/nmh/forwcomps или <mh-dir>/forwcomps (второй предпочтительнее). При наличии флага -digest остов сообщения находится в файле /etc/nmh/digestcomps или <mh-dir>/digestcomps. Файл /etc/nmh/mhl.forward или <mh-dir>/mhl.forward - стандартный фильтр для обработки сообщений (второй предпочтительнее). В качестве пользовательского профиля выступает SHOME/.mh_profile. Предварительное сообщение содержится в файле <mh-dir>/draft. В профиле SHOME/.mh_profile можно встретить такие компоненты: Path: определяет пользовательский каталог для nmh Current-Folder: текущая открытая папка по умолчанию Draft-Folder: папка с предварительным сообщением для comp, dist, forw, также берется по умолчанию Editor: перекрывает редактор, вызываемый по умолчанию fileproc программа перерегистрации сообщения whatnowproc: npoi рамма, задающая вопросы "What now? (Что сейчас делать?)", вызывается comp, dist. forw, которые запрашивают о расположении предварительного сообщения (но умолчанию /usr/bin/whatnow) Заданная папка становится текущей, а первое перепорученное сообщение — тек\- щим сообщением.
II. Команды free информирует об использовании памяти в системе Синтаксис free [-b|-k|-m][-o][-s delay] [-t] [-V] Выводит информацию о свободной и используемой памяти, области своппинга (подкачки), буферах ядра, разделяемой памяти, кэш-памяти (сверхоперативной памяти). Опции -Ь -к -т -о -s delay -t -V Пример $ free Нет: Показывает количество памяти в байтах. Показывает количество памяти в килобайтах (по умолчанию). Показывает количество памяти в мегабайтах. Запрещает вывод строки -/+ buffers/cache (буфера/кэш), где знаки плюс и минус соответственно обозначают добавленную или отнятую память буферов. Безостановочно выводит информацию каждые delay секунд. Выводит строки, содержащие суммарное количество памяти. Информирует о версии программы. total 30536 -/+ buffers/cache: Swap: 42296 $ used 28520 18716 10272 free 2016 11820 32024 shared 21600 buffers 656 cached 9148 frm (nfrm) выводит список тем и отправителей почтовых сообщений, находящихся в вашем почтовом ящике. Синтаксис frm [-hMnQqStv][-s statue][folder\ username]... nfrm [-hnQqStv][-s statu8][folder\tiBernaae]... Для описания каждого сообщения выводит по строке следующего формата: from [subject] где from - имя отправителя, от которого получено сообщение, и subject - тема сообщения. Про! рамма frm производит считывание imnaifolder. если она указана, вместо почтового ящика, заданного по умолчанию. Если же в качестве dpi) мента опреде юно имя
2t>4 И Команды пользователя username,toasa программа ищет его почтовый ящик, заодно проверяя, есть ли у вас полномочия на чтение. Команда nfrm идентична frm -s new. Опции -h -М -n -Q -q -s -s status Пример $ frm chief chief misha chief chief $ Выводит справку по опциям npoi раммы. Трактует все папки, как если бы они были спул-папкой (блокирование, статус обновления, заголовки и т.д.). Использует такую же схему нумерации, как readmsg. Выводит только сообщения об ошибках. Эта опция полезна в сценариях оболочек, где важно лишь знать, успешно или аварийно завершилась программа. Выводит только по одной итоговой строке для каждого указанного почтового ящика или папки. Выводит общее количество сообщений в каждом почтовом ящике или папке. Выводит только заголовки сообщений с указанным статусом. Параметр status может принимать следующие значения: new новое unread непрочитанное old старое read прочитанное Устанавливает режим tidy (аккуратный). Если поле From (от кого) достаточно длинное и затрагивает поле Subject (тема), последнее будет перенесено на следующую строку. Устанавливает режим подробного вывода: распечатывает описательный заголовок до вывода содержимого каждого почтового ящика или папки. &2 letter for all letter for all lettermainletter lettermainletter fsck проверяет и исправляет файловую систему Linux. Синтаксис fsck [-sACVRTNP][-t fstype][ — ][fsc*-options] filesys (...)
II. Команды 265 Программа fsck проверяет, а иногда и "ремитирует" одну или более файловых систем Linux, поэтому в качестве filesys может быть указано имя устройства (например, /de\/hdcl), точка монтирования (например, /usr), метка (ext2) или UUID Код возврата fsck - это сумма следующих условий: 0 отсутствие ошибок 1 наличие корректируемых ошибок файловой системы 2 систему следует перезагрузить 4 ошибки файловой системы остались неисправленными 8 ошибка операции 16 подсказка или синтаксическая ошибка 128 ошибка связана с разделяемой библиотекой Очень часто fsck - это просто интерфейс к различным программам проверки файловых систем. Оп ии -s Устанавливает серию операций с помощью fsck, что очень удобно, если вы проверяете несколько файловых систем, а программы проверки работают в интерактивном режиме. Например, по умолчанию e2fsck запускается в интерактивном режиме. Чтобы запустить e2fsck в пакетном режиме, следует указать опцию -р или -а, если вы хотите, чтобы ошибки корректировались автоматически; в противном случае - опцию -п. -t fstype Указывает тип проверяемой файловой системы. Совместно с флагом -А проверяет лишь файловые системы заданного типа. Еспп fstype начинается с префикса по, тогда только проверяет файловые системы, тип которых не совпадает с fstype. -А Просматривает файл /etc/fstab и пытается проверить все файловые системы, описанные в нем. Такая опция обычно задана в файле инициализации системы. Вначале проверяется корневая файловая система, если только не указана опция -Р. Затем файловые системы проверяются в порядке, указанном fs passno (шестое поле файла /etc/fstab). Если встречаются файловые системы с одинаковыми номерами. e2fsck старается проверять их параллельно. -С Отображает шкалу (лишь одну в текущий момент) хода выполнения для тех программ проверки файловых систем, которые поддерживают такую возможность. -N Ничего не выполняет, а лишь показывает, что могло бы делаться. -Р В случае установки флага -А проверяет файловую сие тему параллельно с проверкой других файловых систем. .R При проверке файловых систем с флагом -А пропускает корневую файловую систему в случае, когда она уже смонтирована для чтения'запнеи. -Т На старте не отображает заголовок. _V Подробно информирует о происходящем, включая все специфические команды файлопых систем, которые исполняются.
266 II Команды fsck-options Рассматривает любую неизвестную программе fsck опцию или следующую за символами — как специфическую опцию файловой системы, которую и передает программе проверки файловой системы. -а Автоматически восстанавливает файловую систему, даже не задавая никаких вопросов. -г Интерактивно восстанавливает файловую систему, требуя подтверждения выполняемых действий. Следует учесть, что такая возможность присуща e2fsck по умолчанию. Эта опция поддерживается лишь для обратной совместимости. fsinfo - выводит информацию о сервере шрифтов системы X. Синтаксис fsinfo [-server servername] Утилита fsinfo анализирует возможности сервера шрифтов, ряд параметров, используемых при подключении клиента к серверу, каталоги шрифтов и доступные альтернативные серверы. Опции -server servername Выводит информацию по указанному серверу servername. Переменная окружения FONTSERVER определяет имя сервера шрифтов, заданное по умолчанию. Пример Образец листинга fsinfo может выглядеть следующим образом: name of server: tansen:7100 version number: 2 vendor string: Font Server vendor release number: 10 maximum request size: 16384 longwords (65536 bytes) number of catalogues: 1 Number of alternate servers: 1 <0 tansen:7101 number of extensions: 0 TSISTOtlLS - выводит список шрифтов, поддерживаемых К сервером шрифтов системы X. Синтаксис fslsfonts {option—][-fn pattern] Можно получить полный список шрифтов или часшчный -для шрнфюи. имена которых соответствуют заданному шаблону pattern.
II. Команды 267 Ц1 -server hosr.port Указывает параметры сервера шрифтов для контакта. Параметр host указывает сетевой узел (систему), где запушен сервер шрифтов, а параметр port - порт, на котором сервер шрифтов прослушивает подключения. -1 В дополнение к имени шрифта выводи г в этой же строке его некоторые атрибуты. -11 Добавляет к выводу опции -I свойства шрифта. -111 Поддерживается для совместимости, хотя вывод полностью совпадает с тем, что создает опция -II. -т Также включает в листинг минимальную и максимальную границы каждого шрифта. -С Создает листинг, состоящий из нескольких столбцов. - г""^ Создает листинг в один столбец. -w width Указывает ширину вывода в символах. По умолчанию - 79 символов. -п columns Указывает количество столбцов, используемых для отображения вывода. По умолчанию принимается 0 столбцов, и вывод производится в соотвегствии с опцией -w width. -и Оставляет вывод несортированным. TSlODCIi - преобразует шрифт, полученный с сервера К. шрифтов системы X, в BDF-формат. Синтаксис fstobdf [-server server] -fn fontname Программа fstobdf считывает шрифт с сервера шрифтов и печатает BDF-файл на стандартный вывод, что может быть использовано для пересоздания шрифта. Это полезно лишь в процессе тестирования серверов при отладке метрик шрифта и восстановления потерянных BDF-файлов. Опции -server server Указывает сервер, с которого должен быть считан шрифт, -fn fontname Указывает шрифт, для которого создается BDF-файл. ftp програм пере ачи «аилов в IP-сетях. Си ис ftp [-pinegvd][ftost] pftp [-inegvd](/iost]
268 II Команды Позволяет подключиться к дистанционной системе, используя протокол FTP. После подключения пользователь может пересылать файлы на дистанционную систему и обратно. Опции можно указывать в командной строке. Опции -р Использует пассивный режим при передаче данных. Позволяет применять ftp в таком окружении, где брандмауэр (сетевой экран) запрещает подключение извне к клиентской машине. В этом режиме требуется, чтобы FTP-сервер поддерживал команду PASV. Такой режим устанавливается по умолчанию при вызове pftp. -i Отключает выдачу интерактивного приглашения при передаче файлов. -п При начальном подключении удерживает ftp от автоматической регистрации на дистанционной системе. Если разрешен автоматический вход (регистрация) на дистанционную систему, ftp начнет просматривать файл .netrc в исходном каталоге пользователя в поисках элемента, описывающего счет (бюджет) пользователя на дистанционной машине. Если такового элемента не существует, ftp пригласит пользователя ввести регистрационное имя (по умолчанию аналогичное регистрационному имени на локальной машине) на дистанционной машине и, если необходимо, предложит ввести пароль. -е Отменяет редактирование команд и поддержку протоколирования (истории) команд, если это было задано при компиляции ftp. В противном случае — ничего не делает. -g Запрещает использовать символы подстановки в именах файлов. -v Подробно уведомляет о всех ответах дистанционного сервера, а также выводит статистику по передаче информации. -d Включает режим отладки. Клиентский узел, к которому ftp осуществляет подключение, может быть указан в командной строке (host). Если это сделано, ftp немедленно попытается установить соединение с FTP-сервером на упомянутом узле. В противном случае ftp перейдет в свой собственный интерпретатор команд и станет ждать указаний пользователя: в строке появится приглашение ftp>. При этом распознаются команды, перечисленные ниже. Команды '.[command [args]] Вызывает на локальной машине интерактивную оболочку. Если заданы аргументы, то первый из них рассматривается как имя команды command для непосредственного исполнения, остаток представляет из себя список аргументов, передаваемых собственно команде (программе). $ macro-name [args] Исполняет макрос macro-name, определенный с помощью команды macdef. Аргументы args, передаваемые макросу, не должны содержать символы подстановки.
II. Команды 269 account [passwd] После успешного ввода имени дополнительно запрашивает пароль, требующийся для доступа к ресурсам дистанционной системы. Если параметр passwd не указан, пользователь будет приглашен для ввода пароля в неотображаемом режиме. append local-file [remote-file] Присоединяет локальный файл local-file к файлу remote-file на дистанционной системе. ascii Устанавливает текстовый режим передачи файлов, что принято по умолчанию. Не стоит передавать двоичные файлы в этом режиме. bell Выводит звуковой сигнал, оповещающий об окончании каждой передачи файлов. binary Устанавливает бинарный (двоичный) режим передачи файлов. В этом режиме можно передавать и принимать любой файл. bye Закрывает соединение с дистанционным сервером и завершает работу ftp. case Если включена команда case (по умолчанию отключена), то все прописные буквы в именах файлов дистанционной системы будет записывать в локальный каталог в виде строчных букв. cd remote-directory Меняет рабочий каталог на дистанционной машине. cdup Осуществляет переход между каталогами дистанционной машины: возвращается в родительский каталог текущего каталога. chmod mode file-name Меняет полномочия файла дистанционной системы по имени file-name на значение mode. close Завершает FTP-сессию с дистанционным сервером и возвращается в командный интерпретатор. Удаляет любые определенные макросы. сг Если включена (по умолчанию) команда сг, то при передаче ASCII-файлов отбрасывает символ возврата каретки, оставляя единственный разделитель записей LF (linefeed - перевод строки). delete remote-file Удаляет на дистанционной машине файл по имени remote-file. debug [debug-value] Устанавливает режим отладки. Параметр debug-value указывает уровень отладки. Если включен режим отладки, ftp распечатывает каждую команду, направляемую на дистанционную машин), со стрелкой —> впереди. dir [remote-dir] [local-file] Печатает содержимое каталога remote-dir n также помещает вывод в файл local-file па локальной машине. Если каталог не задан, печатает содержимое текущего рабочего каталога дистанционной машины. 1;сли
270 II Команды не указан локальный файл или вместо его имени стоит дефис, выводит содержимое каталога на терминал. disconnect Синоним команды close. form format Устанавливает тип передачи в значение format. По умолчанию этот параметр принимает значение file (файл). get remote-file [local-file] Копирует файл remote-file дистанционной машины на локальную под именем local-file. Если параметр local-file не указан, имя дистанционного файла сохраняется. При передаче файла используются текущие установки команд type, form, mode и struct. glob Допускает расширение имен файлов, т.е. разрешает использовать символы подстановки в командах mdelete, mget и mput. Расширение имен файлов для команды выполняется как в оболочке csh. А для команд mdelete и mget каждое имя дистанционного файла расширяется отдельно на дистанционной машине, и при этом списки не сливаются. hash После передачи каждого блока размером 1024 байт выводит символ #. help [command] Выводит справку по указанной команде command. Если аргумент не задан, ftp печатает список всех своих команд. idle [seconds] Устанавливает показание неактивного таймера (определяющего время бездействия) на дистанционной машине в значение seconds. Если параметр seconds не задан, распечатывает текущее значение таймера. led [dir] Меняет рабочий каталог локальной машины на указанный. Is [remote-dir] [local-file] Печатает содержимое каталога remote-dir дистанционной машины и также помещает вывод в файл local-file на локальной машине. В листинг включается любая системно-зависимая информация, которую выбирает сервер; так большинство Unix-систем создает вывод с помощью команды Is -1 (см. nlist). Если каталог не задан, печатает содержимое рабочего каталога дистанционной машины. Если не указан локальный файл или вместо его имени стоит дефис, выводит содержимое каталога на терминал. macdef macro-name Определяет макрос macro-name. Встреченная среди строк макроса пустая строка, которая содержит символ NL (ncwline - новой строки) или CR (carriage return - возврат каретки), завершает режим ввода макроса, который остается определенным до ввода команды close. Макропроцессор интерпретирует символы $ и \ как специальные. Символ $. за которым следует число, замещается соответствующим аргументом из строки вызова макроса. Символ i, следующий за $, уведомчяет макропроцессор о цикле: при первом прохождении цикла $i «амещастся первым аргументом из строки вызова макроса, при втором прохождении - вторым аргументом и т.д.
II. Команды mdelete [remote-files] Удаляет файлы remote-files дис ганционной машины mdir remote-files local-file Подобна команде dir, но позволяет задать несколько дистанционных файлов. mget remote-files Расширяет имена файлов remote-files дистанционной машины и выполняет для каждого файла команду get. Создание имен файлов будет выполняться в соответствии с текущими установками команд case, ntrans, nmap. Файлы копируются в локальный рабочий каталог. mkdir dir-name Создает каталог на дистанционной машине. nils remote-files local-file Подобна команде nlist, но позволяет задать несколько дистанционных файлов remote-files, и к тому же должен быть указан файл local-file для вывода содержимого. mode [mode-name] Устанавливает режим передачи файла в значение mode-name. По умолчанию принят режим stream (потоковый). modtime file-name Выводит время последней модификации файла file-name дистанционной машины. mput local-files Производит расширение имен локальных файлов (см. glob) списка local-files и выполняет команду put для каждого из файлов. Создание имен файлов выполняется в соответствии с установками команд ntrans и nmap. newer file-name [local-file] Копирует файл file-name с дистанционной системы, если он новее, чем соответствующий файл local-file локальной системы. Если такой файл не существует на локальной системе, просто копирует дистанционный файл, правда при этом он может получить имя local-file. В остальном эта команда идентична get. nlist [remote-dir] [local-file] Печатает список файлов дистанционного каталога remote-dir и также направляет вывод в локальный файл local-file. Если парамет р remote-dir не указан, выводит список файлов текущего рабочего каталога дистанционной машины. Если не задан локальный файл или вместо его имени стоит дефис, вывод направляется на терминал. nmap [inpatient outpattern] Устанавливает илн отменяет механизм отображения имен фай нов. |де inpatient - шаблон для имен входных файлов, a outpattern для имен выходных. Если аргументы не «аланы, отменяет мечлнпзм отображения. Эта команда полезна, если приходи гея подключи! ься к дне нищи-
272 II Команды онному компьютеру с операционной системой, отличной от Unix, где действуют другие соглашения шносигельно имен файлов. Если заданы аргументы, то отображаются дистанционные имена файлов в командах mput и put и локальные имена файлов в командах mget и get. ntrans [inchars [outchars]] Устанавливает или отменяет механизм трансляции символов имен файлов. Если аргументы не заданы, отменяет механизм трансляции. Символы имен файлов, совпадающие с символами в наборе inchars, замещаются соответствующим символом из outchars. Эта команда полезна, если приходится подключаться к дистанционному компьютеру с операционной системой, отличной от Unix, где действуют другие соглашения относительно имен файлов. Если заданы аргументы, то транслируются символы дистанционных имен файлов в командах mput и put и локальных имен файлов в командах mget и get. open host [port] Устанавливает соединение с указанной системой host с использованием заданного порта port. prompt Выключает или включает интерактивное приглашение. При пересылке нескольких файлов интерактивное приглашение позволяет выборочно отобрать файлы. Если интерактивное приглашение отключено (по умолчанию включено), команды mget и mput скопируют все файлы, а команда mdelete удалит все файлы. proxy ftp-command Выполняет указанную FTP-команду на вторичном подключении. Команда proxy позволяет параллельно подключаться к двум дистанционным ftp-серверам для пересылки файлов между ними. Первой из команд proxy должна быть команда open, позволяющая выполнить вторичное подключение. Затем можно ввести команду proxy ?, чтобы получить справку по командам вторичного подключения. Команда open для proxy не определяет новый макрос при авторегистрации, a close - не уничтожает существующих определений макросов. Команды get и mget осуществляют пересылку файлов с сетевого узла первичного подключения на вторичный узел. И наоборот, команды put, mput и append осуществляют пересылку файлов с сетевого узла вторичного подключения на первичный узел. put local-file [remote-file] Копирует локальный файл local-file в дистанционный файл remote-file. Если remote-file не задан, использует имя локального файла, обработанное в соответствии с установками команд ntrans или nmap. В процессе пересылки файлов используются текущие установки для команд type, form, mode и struct. pwd Печатает имя текущего рабочего каталога дистанционной машины. quit Синоним команды bye.
II. Команды 273 quote aiy\ argl ... Посылает произвольную FTP-команду на дистанционный ГГ Р-сервер Здесь предполагается, что argl - это сама задаваемая команда для выполнения на дистанционном узле; все другие аргументы последовательно передаются команде. recv remote-file [local-file] Синоним команды get. reget remote-file [local-file] Действует подобно команде get, но если local-file уже существует и он меньше, чем remote-file, предполагает, что local-file - это часть ранее осуществляемой и неуспешно завершенной передачи. Возобновляет копирование с соответствующего места. Эта команда полезна при передаче больших файлов по низкокачественным телефонным каналам. remotehelp [command-name] Запрашивает у дистанционной системы справку по заданной команде command-name. remotestatus [file-name] Без аргумента сообщает о состоянии дистанционной машины. Если задан аргумент file-name, сообщает о состоянии указанного файла. rename [from] [to] Переименовывает файл from дистанционной системы в файл to. reset Очишает очередь ответов. Эта команда повторно синхронизирует последовательность команда/ответ с дистанционным FTP-сервером. Необходимость в таких действиях может быть вызвана нарушением FTP-протокола со стороны дистанционного сервера. restart marker Осуществляет повторный запуск передачи файлов с помошыо команд get или put, начиная с места, указываемого аргументом marker, который задает смещение в байтах относительно начала файла. rmdir dir-name Удаляет каталог на дистанционной машине. runique Включает на локальной системе режим сохранения файлов с уникальными именами. Если пользователь копирует с дистанционной системы файл, имя которого уже существует в локальной системе, при первой попытке имя копируемого файла получает числовой суффикс .1, при следующих попытках .2, .3 и т.д. Этот процесс может продолжаться до тех пор, пока не будет установлен максимальный суффикс - .99. По умолчанию рассмотренный режим отключен. send local-file [remote-file] Синоним команды put. sendport Устанавливает использование команд PORT. По умолчанию в процессе подключения программа ftp пы гас гея для каждой пересылки чанных использован, команду PORT. Применение комамч PORT может предотврати ib задержку при пересылке нескольких файлов. Гели очеред-
274 II Команды ная команда РОКГ завершается аварийно, ftp будет использовать заданный по умолчанию порг. Если огключено применение команд PORT, не будет производиться никаких поныюк исполыоват ь такую команду для каждой передачи данных. site arg\ argl ... Посылает на дистанционный сервер команду, специфичную для его сайта. Первый из аргументов обычно является именем команды, все последующие аргументы последовательно передаются этой команде. size file-name Сообщает о размере файла file-name дистанционной системы. status Уведомляет о текущем состоянии ftp. struct [stnict-name] Устанавливает структуру передаваемого файла в значение struct-name. По умолчанию используется структура stream (потоковая). sunique Включает на дистанционной системе режим сохранения файлов с уникальными именами. Для успешного выполнения этой возможности дистанционный FTP-сервер должен поддерживать команду STOC для протокола FTP. Дистанционный сервер будет сообщать о назначенном уникальном имени. По умолчанию эта возможность не включена. system Сообщает об операционной системе дистанционной машины. trace Включает трассировку пакетов. type [type-name] Устанавливает режим передачи файлов в значение type-name. Если не задан никакой аргумент, распечатывает текущее значение режима. По умолчанию принят режим ASCII (текстовый). umask [newmask] Устанавливает маску, определяющую режим создания файлов на дистанционной системе, в значение newmask. Если аргумент newmask не задан, печатает текущее значение маски. user user-name [password] [account] Посылает дистанционной системе информацию о новом пользователе, указывая его имя user-name, пароль password и номер счета (бюджета). Если аргумент password не указан, а сервер требует его, пользователь приглашается для введения пароля. Если аргумент account не указан, а сервер требует его, пользователь приглашается для введения номера счета. Весь этот процесс обычно осуществляется автоматически при первичном подключении к FTP-серверу, если только не отключена авторегистрация. verbose Выводит подробные информационные сообщения. Пользователю сообщается о всех ответах FTP-сервера, а также после завершения пересылки файла выводится статистика, отражающая эффективноегь передачи. По умолчанию эта особенность включена. ? [command] Синоним команды help. Аргументы команд, содержащие пробелы, должны заключаться в кавычки.
II. Команды 275 Пример Ниже приведен фрагмеш ftp-сессии. s1 root@localhostlocaldomain:/rQot |_ о х Шайл Правка Sellings Справка ftp> user misha 331 Password required for misha. Password: 230 User misha logged in. ftp> binara 200 Type set to I. ftp> glob Clotting on. ftp> mget photo* mget photo01.gif? a 200 PORT command successful. 150 Opening BINARY mode data connection for photo01.gif (34702 bytes). 226 Transfer complete. 34702 bytes received in 0.0333 sees (le+03 Kbytes/sec) mget photo02.gif? у 200 PORT command successful. 150 Opening BINARY mode data connection for photo02.gif <27250 bytes). 226 Transfer complete. 27250 bytes received in 0.033 sees <8.1e+02 Kbytes/sec) mget photo08.gif? у 200 PORT command successful. 150 Opening BINARY mode data connection for photo08.gif (36590 bytes). 226 Transfer complete. 36590 bytes received in 0.0211 sees (1.7e+03 Kbytes/sec) mget photo09.gif? n mget photol0.gif? n mget photol5.gif? n ftp> I Подключившийся к дистанционной системе пользователь misha ввел по требованию программы свой пароль. Установил двоичный режим передачи и замещение имен файлов. С помощью команды mget определил группу пересылаемых файлов. Далее ftp уточняет необходимость пересылки каждого найденного файла. ftpCOlint - показывает текущее количество пользователей FTP-сервера. Синт. ис ftpcount [-V] Команда ftpcount выводит текущее количество пользователей (и предел) для каждого класса, определенного в файле ftpaccess. Опции _V Выводи i информацию о версии upoi раммы и шпершаег ее выполнение.
276 II Команды Пример $ ftpcount Service class all - 2user6 (no maximum) S ftpd запускает демон Internet-сервера на протоколе FTP Синтаксис ftpd [-d][-v)[-l][-t timeout][-T maxtimeout][-а][-Л)[-LJ[-i][-I][-o] [-p ctrlport][-P dataport) (-q][-Q]I-r rootdir] [-s] [-SJl-u шпавк][-V] [-w][-W][-X] ftpd -это процесс FTP-сервера, который, используя протокол TCP, "прослушивает" порт, указанный для службы FTP в файле /etc/services. Опции -V Выводит информацию о версии программы и затем завершает ее. -d Записывает в syslog (системный журнал) отладочную информацию. -t timeout Обычно FTP-сервер получает тайм-аут после 1 5 минут неактивной сессии. С помощью этой опции можно выполнить установку тайм-аута неактивного периода. По умолчанию - 2 часа. -Т maxtimeout Позволяет клиенту запросить максимальный период тайм-аута. По умолчанию — 2 часа. -а Использует конфигурационный файл ftpaccess, определяющий классы пользователей и, как следствие, возможности их доступа к серверу. -А Запрещает (по умолчанию) использовать файл ftpaccess. -1 Регистрирует в системном журнале каждый FTP-сеанс. -L Регистрирует в системном журнале все команды, посылаемые серверу FTP, хотя эта опция может перекрываться параметрами файла ftpaccess. -i Регистрирует в xferlog (в журнале регистрации FTP-сервера) файлы, получаемые сервером. Эта опция может перекрываться параметрами файла ftpaccess. -I Отключает использование RFC931, с помощью которого делается попытка определения имени пользователя на машине-клиенте. -о Регистрирует в xferlog файлы, отправляемые сервером. Эта опция может перекрываться параметрами файла ftpaccess. -X Вывод, создаваемый с помощью опций -i и -о, не сохраняется в xferlog, но сохраняется через syslog таким образом, что можно централи юван- но накапливать информацию от различных сетевых узлов в одном ж} р- нале. -и uma.sk Устанавливает маску полномочии, принимаемую по умолчанию, в указанное значение uma.sk.
II. Команды 277 -w -Р clataport -р clrlport -Q -r rootdir Фиксирует в файле wtmp каждую регистрацию пользователя на FTP- сервере и выход из него. Опция принята по умолчанию. Запрещает фиксировать регистрацию пользователя в файле wtmp что осуществляется с помощью опции -w. Запускает демон ftpd в фоновом режиме, ч го полезно при старте сценариев re.local во время инициализации системы. Запускает демон ftpd в приоритетном режиме, что полезно при запуске от init (/etc/inittab). Перекрывает номер порта данных, используемого демоном. Обычно ftpd извлекает номера портов из /etc/services. Перекрывает номер управляющего порта, используемого демоном. Опция -р доступна только в том случае, если ftpd запускается как автономный демон. Использует PID-файлы (PID—идентификатор процесса). Эта опция принята по умолчанию. Запрещает использовать РЮ-файлы. Сразу же после загрузки с помощью chroot устанавливает указанный каталог rootdir в качестве корневого каталога системы. Аналогична опции -d. ftpshut - закрывает FTP-сервер в указанное вр- я Синтаксис ftpshut [-V][-l min] [-d min] time {warning-message...] Команда ftpshut записывает файл с сообщением завершения в единственном месте, указанном с помощью ключевого слова shutdown в файле /etc/ftpaccess. Сразу же после проведения закрытия сервер продолжает отказываться от подключений, пока этот файл не будет удален. Поэтому, когда настанет время повторно запустить сервер, вам придется вручную удалить файл с сообщением завершения. Может быть указано немедленное завершение работы FTP-серверов или предстоящее время завершения в одном из двух форматов: +mimber или hhmm (24-часовый формат). Размер предупреждающего сообщения warning-message может достигать 75 символов. Оп ии -V -1 min Печатает информацию о версиях программы и завершает ее выполнение. Определяет время, когда FTP-сервср станет недоступным: по >молчанию - за десять минут до завершения работ или немедленно, если указанное нремя меньше десяти мину г.
278 И Команды -d niin Определяет время, когда будут разорваны все 1екушие РТР-подключения: по умолчанию - за пять минут до завершения работ или немедленно, если планируется завершить ftpshut ранее, чем через десять минут. ftpwho показывает текущий статус каждого FTP-пользователя. Синтаксис ftpwho [-V] Уведомляет о текущем статусе каждого пользователя, зарегистрировавшегося на FTP-сервере. Опции -V Выводит информацию о версии программы и завершает ее выполнение. Пример $ ftpwho Service class all: 1099 ? S 0:00 ftpd: myhost.mydomain: misha: IDLE 1 users (no maximum) $ funzip - фильтр^используемый в конвейере, для извлечения компонентов из ZIP-архива. такси [ — ] | funzip [ -password] | [... ] funzip [-password] input.zLp\[...] funzip [-password] Input.gz\[...] Поскольку funzip действует как фильтр, предполагается, что ZIP-архив (или gz-файл) будет подан по конвейеру через стандартный ввод. Хотя вместо стандартного ввода может быть указан файл input.zip (input.gz). Для шифрованных ZIP-файлов в командной строке может быть указан необязательный аргумент -password - пароль, которому обязательно предшествует дефис. Необязательный пароль должен быть определен до любых имен файлов, если последние содержатся в командной строке. Однако задавать пароль в командной строке - это прежде всего большой риск для надежности системы. Если первый компонент ZIP-фанла зашифрован, но в командной строке не указан пароль, пользователь будет приглашён для ввода пароля, который в этом случае не отображается на консоли. В связи с существующим ограничением на извлечение единс гненноги ччена архива iipoi рамма funzip более полезна в сочетании с вторичной архивной профнммом тина tar.
II. Команды Пример Следующая команда используется, чгобы проверить первый компонент архива prim98.gz: $ funzip prim98.gz>/dev/null $ Любые обнаруженные ошибки будут направляться в С1андартный файл ошибок. fuser идентифицирует процессы, использующие указанные файлы или сокеты. fuser [-a|-s][-n space] [signal] [-kimuv| паше... [-][-n space] [-signal] [-kimuv] name... fuser -1 fuser -V Программа fuser отображает идентификаторы процессов (PID), использующих указанные файлы или файловые системы, задаваемые аргументом пате. По умолчанию в режиме отображения за каждым именем файла следует буква, показывающая вид доступа: с текущий каталог е запущенный исполняемый файл f открытый файл; по умолчанию в режиме отображения буква f может отсутствовать г корневой каталог m отображаемый файл или разделяемая (совместно используемая) библиотека Опции -а Отображает все файлы, указанные в командной строке, хотя по умолчанию выводятся имена только тех файлов, которые используются \отя бы одним процессом. -к Отправляет процессам, обращающимся к указанным файлам, сигнал завершения SIGKILL (см. приложение 1), хогя его можно заменить с помощью опции -signal. -i Перед завершением процесса требует подтверждения от пользования. Эта опция игнорируется, если опция -к не задана. -1 Отображает все существующие названия сигналов (см. приложение 1). -т Если определена эта опция, указывает файл смон гирокишой файловом системы или смонтированное блочно-специальное ycipoiicmo. -n space Выбирает различные мможес ша имен. Поддерживаю гея множееша имен файлов (по умолчанию), udp (локальные иори.1 VOV). tcp (локальные
II Команды порты TCP). Для портов может быть указан либо номер порта, либо его символическое имя. -s Производит операции без вывода сообщений. В этом режиме игнорируются опции -и, -v и -а. -signal Посылает процессу указанный сигнал завершения вместо обычного SIGK.ILL. Сигналы могут задаваться по номеру или но наименованию (см. приложение I). -и Добавляет к каждому PID имя владельца процесса. -v Отображает процессы в стиле команды ps. -V Выводит информацию о версии программы. Переустанавливает все опции. Пример # fuser -uvm /mnt/floppy USER PID ACCESS COMMAND /mnt/floppy misha 1101 ..c. gmc t Q3WK - GNU-версия языка программирования AWK. К. Синтаксис gawk [option] -f program-file [— ] file... gawk [option] [— ] program-text file... В командной строке могут встречаться собственно опции gawk, текст программ на языке программирования AWK и значения предопределенных переменных языка. Опции gawk могут быть заданы либо в традиционном однобуквенном стиле POSIX или в виде длинных опций GNU. Соответственно опции POSIX начинаются с одного дефиса, в то время как длинным опциям GNU предшествуют два дефиса. В первую очередь gawk считывает исходные тексты программ из файлов program-file (опция -f). если таковые указаны, из файлов, определяемых опцией —source, или из первых встреченных в командной строке аргументов без опций (program-text). Основные опции -¥ fs, —field-separator fs Использует/s в качестве разделителя входных полей AWK. Определяет значение предопределенной переменной FS. -v var=val. —assign var=val Назначает значение га/ переменной ют до начала выполнения программы. Такие значения переменных доступны в блоке BEGIN npoi гммм на языке AWK.
II. Команды -f program-file, —file program-file Считывает исходный текст программ на языке AWK из фай та program-file. -W traditional, -W compat, --traditional, -compat Запускает gawk в режиме совместимости: действует аналогично awk в UNIX. В этом режиме не используются никакие специфические расширения GNU. -W help, -W usage, —help, —usage Направляет на стандартный вывод относительно краткую справку о доступных опциях gawk. -W lint, —lint Печатает предупреждения о "подозрительных" конструкциях или непереносимых в другие реализации языка AWK. -W lint-old, -lint-old Предупреждает о конструкциях, непереносимых в оригинальную версию awk в Unix. -W posix, —posix Включает режимы совместимости со следующими дополнительными ограничениями: Q не распознаются управляющие последовательности \х Q когда FS устанавливается в единственном месте, в качестве разделителей полей действуют только символы пробела и табуляции, но никак не символ newline Q не распознается синоним func ключевого слова function А экэк Л Л Q операторы и = не могут использоваться вместо и = Q недоступна функция fflush -W re-interval, —re-interval Включает использование компонентов, определяющих интервалы, или диапазоны, в регулярных выражениях. Одно или два числа внутри фигурных скобок, разделенные запятой, рассматриваются как определение числового диапазона. Подобные компоненты изначально не были доступны в языке AWK. Стандарт POS1X добавил их, чтобы awk и egrep соответствовали друг другу. Опция -posix также определяет их использование. -W source program-text, —source program-text Использует program-text в качестве исходного кода на языке AWK. С помощью этой опции легко соединить библиотечные функции, указываемые с помощью опции -f, с исходным кодом, введенным прямо в командной строке. -W version, —version Сообщает о версии применяемой реализации gawk. Указывает конец опций.
282 II Команды Ш' rnisha®localhost localdornain: /home/misha [mishaGlocalhost mishalt gawk '{print NF ": " tO}' AWK is a good idea 5: AWK is a good idea Ask not what you can do for AWK, 8: Ask not uhat you can do for AWK, but rather 2: but rather uhat AWK can do for you Б: uhat AWK can do for you [mishaQlocalhost misha]i | Пример Самый простой способ использования AWK -кодировать программу в командной строке, принимать входные данные со стандартного устройства ввода (с клавиатуры) и посылать выходные данные на стандартное устройство вывода (экран). Здесь приведена эта простейшая форма программы. В начале строк печатается количество полей входных записей. CJCCj CJt г - компилятор GNU языков программирования С и C++. Синтаксис gcc [option\ filename] д++ [option | filename] Компиляторы языков С и C++ интегрированы, причем, g++ представляет собой сценарий, вызывающий gcc с опциями, распознающими язык программирования C++. gcc может провести свои заданные файлы через четыре стадии: препроцессирование, компиляция, создание объектного кода (ассемблирование) и компоновка (создание исполняемого файла). Программа на языке С может содержать специальные команды препроцессора, который модифицирует код еще перед обработкой его компилятором (см. срр). Собственно компилятор обрабатывает исходный код и создает версию программы на языке ассемблера. Используя созданную компилятором версию программы, ассемблер генерирует объектный код. Четвертый компонент - компоновщик - создает из объектного кода исполняемый файл. По умолчанию этому файлу будет присвоено имя a.out. Суффиксы имен файлов указывают язык программирования, а также вид проделанной и предстоящей обработки. Ниже приведены упомянутые суффиксы: .с исходный файл на языке С .С исходный файл на языке C++ .ее исходный файл на языке C++ .схх исходный файл на языке C++ .срр исходный файл на языке C++ .т исходный файл объектно-ориентированного С .i файл на языке С, предварительно обработанный препроцессором .ii файл на языке C++, предварительно обработанный препроцессором .s файл с кодом ассемблера .S файл с кодом ассемблера
II. Команды 283 .о .а файл препроцессора; файл заголовка на языке С, обычно в командной строке не именуется объектный файл архивный файл Основные опции -х language Конкретно указывает язык language входных файлов, не ориентируясь на суффикс имени файла. Ниже представлены возможные значения параметра language : с cpp-output objective-c c++-cpp-output C++ assembler c-header assembler-with-cpp -x none Отключает использование какой-либо спецификации языка, ориентируясь лишь на суффиксы имен файлов. Так и было бы по умолчанию, если бы вообще не применялась опция -х. Но если пользователь желает выполнить одну из четырех стадий, реализуемых gcc, то можно использовать -х (или суффиксы имен), чтобы "разъяснить" gcc, откуда начать, и одну из опций -с, -S или -Е, чтобы определить, где следует остановиться. -с Компилирует или ассемблирует исходные файлы, создавая файл объектного кода, но не выполняя компоновку. По умолчанию создает имя объектного файла из исходного, замещая суффикс .с, Л, .s и т.д. на .о. -S Останавливается после стадии компиляции. -Е Останавливается после стадии препроцессирования, направляя результат на стандартный вывод. -о file Задает имя выходного файла. Может применяться на разных стадиях работы gcc, соответственно указывая исполняемый файл, объектный, ассемблерный или файл на С после обработки препроцессором. -v Направляет в стандартный файл ошибок команды, выполняемые для реализации стадий компиляции, а также выводит информацию о версиях компилятора и препроцессора. -pipe Вместо временных файлов применяет конвейеры для связи между различными стадиями работы gcc. -gdebinfo Создает отладочную информацию в формате, задаваемом аргументом debinfo, который может принимать следующие значения: gdb для использования отладчиком GDB stabs в формате stabs без расширений GDB (на MIPS, Alpha и System V Release 4) stabs+ в формате stabs, используя расширения GNU, понимаемые только GDB coff формат COFF использовался ранее SDB на большинстве систем до System V Release 4
284 И Комаццы xcoff формат XCOFF используется отладчиком DBX на системах IBM RS/6000 xcoff+ формат XCOFF с расширениями GNU, понимаемый только GDB dwarf формат DWARF (версия 1), используемый SDB на большинстве систем System V Release 4 dwarf+ формат DWARF (версия 1) с расширениями GNU, понимаемый только GDB dwarf-2 формат DWARF (версия 2), используемый DBX в IRIX6 -include file Отрабатывает заданный файл как входной до обработкн обычного входного файла. В первую очередь компилируется содержимое указанного файла. -М [-MG] Предлагает препроцессору создать правило, пригодное для make и описывающее имя объектного файла и его зависимости, т.е. все файлы, включаемые в него с помощью директивы #include. Такое правило может занимать одну строку и более; в качестве символа продолжения применяется обратный слэш. Вместо обработанной препроцессором исходной программы на стандартный вывод направляется список правил; такой список использует make. Опция -М предполагает опцию -Е. Параметр -MG подразумевает, что пропущенные файлы заголовков сгенерированы и находятся в том же каталоге, где размещается исходный файл. -~Wa,option С помощью параметра option передает ассемблеру опцию или разделенный запятыми список опций. object-file-name Считает, что имя файла, которое не содержит специального распознаваемого суффикса, является именем объектного файла или библиотеки. Эти объектные файлы используются как входные, если gcc выполняет стадию компоновки. Alibrary В процессе компоновки использует указанную библиотеку library. -lobjc Эта опция необходима для компоновки программ на объектно-ориентированном С. -static В системах, поддерживающих динамическую компоновку, не разрешает компоновку с разделяемыми библиотеками. В других системах эта опция неэффективна. Библиотеки могут быть статическими, разделяемыми (совместно используемыми) и динамическими. Код статической библиотеки встраивается в программу при компиляции, код разделяемой библиотеки - при каждом запуске программы. Динамическая библиотека тоже может загружаться при запуске программы, однако сами библиотечные функции загружаются лишь при поступлении соответствующей команды из программы. -shared Создает разделяемый объект, который может быть затем скомпонован с другими объектами, формируя исполняемый файл.
II. Команды -Wl.opfion С помощью параметра option передает компоновщику опцию или разделенный запятыми список опций. Пример $ g++ mycprog.срр -о outprog $ В приведенном примере компилируется программа mycprog, написанная с использованием объектно-ориентированной версии языка С. Эта версия языка разработана для систем NeXT. дао - вы ывает отладчик GNU. Синтаксис gdb I-help][-nx][-q][-batch][-cd=dirl[-f][-b bps][-tty=dev][-s symfile] [-e prog] I-se prog][-c core]\-x cmds][-d dir\\.prog [ core | procJD] ] Основное предназначение отладчика gdb, как и всякого другого, предоставлять информацию о том, что происходит внутри некоторой программы, а также о том, что случилось в момент аварийного завершения. Чтобы помочь пользователю "выловить" ошибки в его программе, gdb умеет делать следующее: D запускает программу пользователя, указывая все, что может воздействовать на особенности ее поведения D останавливает программу при заданных условиях D анализирует, что случилось при останове программы D позволяет вносить экспериментальные изменения в программу, упрощающие процесс поиска ошибок Можно использовать gdb для отладки программ на языках С, C++ и Modula-2, указывая в командной строке имя исполняемой программы prog. Отладчик вызывается с помощью команды оболочки gdb. Однажды запущенный, считывает команды, поступающие с терминала, до тех пор, пока не получит от пользователя команду quit. Помимо имени программы в командной строке можно указать файл core (дамп памяти) или идентификатор процессаргосЮ. если требуется отладить запущенный процесс. Далее приведены наиболее часто применяющиеся команды gdb. Команды break [file:] function Устанавливает контрольную точку в первой строке указанной функции Junction (в файле file). run [arglisl] Запускает вашу программу с указанным списком api ументов.
286 II Команды bt Отображает последовательность вы ювов подпрограмм, приведшую к данной точке программы. print expr Отображает значение выражения ехрг. с Продолжает вашу программу после останова в контрольной точке next После останова продолжает выполнять следующую строку программы; пропускает любые вызовы функций в этой строке. step После останова продолжает выполнять следующую строку программы; шаг, реализующий любые вызовы функций в этой строке. help [name] Выводит информацию о команде по имени пате или общую информацию о применении отладчика, если не указано конкретное имя. quit Осуществляет выход из отладчика. Опции Все опции и аргументы командной строки обрабатываются в последовательном порядке за исключением опции -х. -help, -h Распечатывает все опции с кратким пояснением. -symbols=symfile, -s symfile Считывает из указанного файла таблицу символов (идентификаторов). -write Разрешает писать в исполняемые файлы и файлы core (дампов памяти). -exec=/vog, -e prog Рассматривает prog как исполняемый файл, который требуется выполнить при соответствующих условиях для анализа констант совместно с данными памяти. -se prog Использует prog как таблицу идентификаторов и исполняемый файл. -соге=соге, -с core Использует для анализа содержимое указанного файла, рассматривая его как дамп памяти. -command=cmds, -x cmds Исполняет команды отладчика из файла cmds. -directory^"", -d dir Добавляет указанный каталог dir к маршруту поиска исходных файлов. -пх, -п Обычно после обработки всех опций и аргументов командной строки выполняет команды файла инициализации .gdbinit. Если задана эта опция, не выполняет такие команды. -quiet, -q He печатает вступительную информацию, а также сведения об авторских правах на эту программу. Подобные сообщения также отс) тству- ют в пакетном режиме. -batch Запускает отладчик в пакетном режиме. Завершается с нулевым ко-юм после благополучного выполнения всех командных файлов, задавас-
II Команды 287 мых с помощью опции -х, и файла .gdbinit. Завершается с ненулевым кодом, если при выполнении команд возникают ошибки. Пакетный режим полезен при использовании отладчика в качестве фильтра: для загрузки и запуска программы на другом компьютере. -ccWi'r Использует указанный каталог dir в качестве рабочего вместо текущего каталога. -fullname, -f Эту опцию устанавливает emacs, вызывая отладчик gdb в качестве подпроцесса. Эта опция определяет стандартный формат вывода gdb: два 32-битных символа, за которыми следуют имя файла, номер строки и положение символа, разделяемые двоеточием и завершающиеся символом newline - новой строки. -b bps Устанавливает скорость в бодах любого последовательного интерфейса, используемого gdb для дистанционной отладки. -tty=dev, -t=dev Использует указанное устройство для стандартного ввода и вывода вашей программы. Пример Ниже приведен запуск программы Iexout под отладчиком gdb. m\ misha@locBlhost.localdomain:/home/misha [mishaGlocalhost misha]t gdb Iexout GNU gdb 1ЭЗЭ1004 j Copyright 1ЭЭ8 Free Software Foundation, Inc. I GDB is free software, covered by the GNU General Public License, and you are j welcome to change it and/or distribute copies of it under certain conditions. 1 Type "show copying" to see the conditions, ! There is absolutely no warranty for GDB. Type "show warranty" for details. This GEB was configured as "i38B-redhat-linux"... (gdb) run Starting program: /home/misha/lexout sd 99 hji Program exited normally, (gdb) print yytext $1 = 0 (gdb) print YY_REAB_BUF_SIZE i No symbol "YY P,EAB_BUF_SIZE" in current context, (gdb) I gdm менеджер дисплея GNOM Синтаксис gdm Программа gdm написана как замещение xdm - менеджера дисплея системы \. Программа gdm запускает Х-сервер и отображает специфическое окошко, приглаша-
288 II Команды ющее пользователя зарегистрироваться в системе. По умолчанию, после ввода имени и пароля устанавливается сеанс GNOME, хотя выбрав Session => KDE, можно заказать K.DE. gdm считывает различные параметры конфигурации из файла/etc/XH/gdm/gdm.conf запуск gdm из командной строки может выполнить лишь суперпользователь. getfilename - запрашивает у пользователя имя файла в заданном формате. Синтаксис getfilename format-Dame file-вате Запрашивает у пользователя имя файла в заданном формате format-name, а затем копирует этот файл в file-name (второй аргумент командной строки). Эта команда практически не используется сама по себе, но добавляет полезные свойства многим почтовым программам, например mailto. Пр мер В файле mailcap (/etc/mailcap) можно найти такое выражение: compose="getfilename Postscript %S" При работе с mailto у пользователя будет запрошено имя включаемого файла в формате Postscript, т.е. команда getfilename будет вызвана неявно. getkeycodes — печатает таблицу соответствия скан-ко- дов клавиш их кодам. Синтаксис getkeycodes Команда getkeycodes выводит таблицу ядра, устанавливающую соответствие между скан-кодами клавиш (шестнадцатеричные значения) и кодами, представляющими физические клавиши (десятичные значения). П имер $ getkeycodes Plain scancodes хх (hex) versus keycodes (dec) 0 is an error; for 1-88 (0x01-0x58) scancode equals keycode 0x58: 0x60: 0x68: 0x70: 0x78: 88 0 0 0 91 124 0 0 0 92 125 0 0 0 93 126 127 0 0 0 0 0 0 122 89 120 0 94 95 124 0 0 0 0 121 0 0 123 90 0
II. Команды 289 Escaped Bcancodes eO xx (hex) eO 00 eO OB eO 10 eO 18 eO 20 eO 28 eO 30 eO 38 eO 40 eO 48 eO 50 eO 58 eO 60 eO 68 eO 70 eO 78 $ 0 0 0 0 0 0 0 100 116 103 108 0 0 0 0 0 0 0 0 0 0 0 0 0 117 104 109 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 110 0 0 0 0 0 0 0 0 0 0 0 0 0 0 105 111 125 0 0 0 0 0 0 0 96 0 0 0 0 0 124 0 126 0 0 0 0 0 0 0 97 0 0 98 113 0 106 0 127 0 0 0 0 0 0 0 0 0 0 0 114 101 118 0 0 0 0 0 0 0 0 0 0 0 0 99 115 102 107 0 0 0 112 0 0 Во второй половине листинга представлены коды управляющих клавиш. Первая часть таблицы не случайно начинается со скан-кода 0x58. Дело в том, что скан-коды, лежащие в интервале 0x01-0x58, эквивалентны своим кодам клавиш, распознаваемым ядром. getlist - получает один из списков от NNTP-сервера. Синтаксис getlist [-h host][list [pattern [types]]] Полученный от NNTP-сервера список list программа getlist посылает на стандартный вывод. Аргумент list может принимать значения active, active.times, distributions или newsgroups. Эти значения соответственно запрашивают содержимое файлов active, active.times, <pathetc in inn.conf>/distributions или <pathdb in inn.conf>/newsgroups. Опции -h Подключается к серверу на указанном узле host. По умолчанию подключается к серверу, указанному в файле inn.conf. Если аргумент list принимает значение active, для ограничения вывода могут использоваться параметры pattern и types. Если указан шаблон pattern, то будут печататься только те строки файла active, чьи группы новостей соответствуют шаблону. Если также задан types, будут печататься только те строки файла active, четвертое поле которых начинается с символа (флаг статуса статей), найденного в types.
290 II Команды CJGTTy - устанавливает связь между Linux и указанным терминалом. Синтаксис getty [-d defaults_filel[-h)[-r delay)[-t timeout][-v uaitfor\ line\speedytype[lined]]] getty -c gettydefs_file Монитор вашего персонального компьютера выступает в роли специального терминала, или консоли. И обычно вам не приходится специально вызывать getty, она будет вызвана из файла /ctc/inittab при загрузке системы. В случае необходимости можно подключить дополнительные терминалы через специальную многопортовую плату, расширяющую возможности последовательных портов компьютера. И в этом случае приходится вызывать getty, указывая ей скорость передачи в бодах и имя устройства-терминала. getty является второй из трех программ - init, getty, login - используемых системой Linux для регистрации пользователя. Программа getty вызывается init, чтобы выполнить следующее: D открыть линии tty (терминалов) и установить их режимы D вывести приглашение регистрации и получить имя пользователя D инициализировать процесс регистрации для данного пользователя Устройство tty, используемое getty, определяется аргументом line. Программа getty применяет строку /dev///ne как имя устройства при его подключении. Аргумент speed - это метка элемента в файле /etc/gettydefs. Этот элемент информирует getty о начальной скорости в бодах, используемом приглашении регистрации, финальной скорости и установках tty. Если аргумент speed не задан или элемент не найден, по умолчанию используется первый элемент файла /etc/gettydefs. Аргумент type - строка, содержащая тип терминала, подключаемого к последовательному порту. В качестве type необходимо применять одно из терминальных имен, содержащихся в БД termcap. Программа getty использует это значение для очистки экрана видеодисплея; на основе значения аргумента type она также устанавливает переменную окружения TERM. Аргумент lined определяет порядок (дисциплину линии), действующий на данной последовательной линии, задается он в виде строки. По умолчанию принята LDISC0. Опции -с gettydefsjile Эта опция используется для тестирования содержимого файла getrydcfs. Анализирует содержимое указанного файлаgettydefs_file, информируя о найденных синтаксических ошибках. -h He дает "зависать" линии во время старта. -г delay Устанавливает время задержки в секундах после приема очерстного символа прежде чем разрешит getty продолжать. По умолчанию принято -г0 (не ждать очередной символ).
II. Команды 291 -t timeout Программа gctty завершается, если не получает имени пользователя в течение указанного параметром timeout количества секунд после вывода приглашения. Устанавливает время ожидания информации от пользователя. По умолчанию время ожидания не ограничивается. -w waitfor Указывает gctty ожидать поступления строки waitfor до того, как она распечатает приглашение регистрации. По умолчанию gctty не ожидает поступления никаких строк символов. -d defaults_fileIlocne синтаксического анализа командной строки getty по умолчанию обращается к файлу /ctc/conf.gctty, отражающему конфигурацию во время выполнения. С помощью этой опции командной строки можно изменить имя файла. QltTip - вызывает одну из наиболее известных графических п»ог»амм Linux. Синтаксис gimp [option] file— gimp - GNU Image Manipulation Program - GNU-программа манипулирования изображениями. gimp - сложное и мощное программное обеспечение с полным набором графических инструментов. Основные опции -п, —no-interface Запускает программу без пользовательского интерфейса. —display display Осуществляет вывод на указанный Х-дисплей. —no-data Запускает программу, не загружая шаблоны, градиенты, палитры, кисточки, —no-splash Запускает программу без отображения стартового окна. —no-splash-image Не выводит обычного изображения в стартовом окне. —no-shm He использует разделяемую между gimp и ее plug-in модулями память. —no-xshm He использует расширения X в части разделяемой памяти. git браузе» «айловой системы. Синтаксис git loption][pathl)[path2]
292 II Команды git - браузер файловой системы с поддержкой ряда особенностей оболочки облегчающей и упрощающей работу пользователя. git создает две панели: левую и правую. Каждая из панелей содержит каталог файловой системы. Пользователь может просматривать дерево каталогов, используя "I4, Ф, Page-Up, Page-Down, Home, End и TAB (для переключения между панелями), а также, нажимая клавишу Enter, входить или покидать каталог. Опции -h Выводит краткую справку по опциям, -v Выводит номер версии GIT. -с Использует ANSI-цвета. -Ь Не использует ANSI-цвета, а все наименования файлов выводятся в одном цвете, -р При выходе выводит финальный маршрут. Аргументы pathX и patKl определяют соответственно маршруты левой и правой панелей. Чтобы выйти из GIT, достаточно нажать FI0. Под двумя панелями располагается строка для обычных команд оболочки, под этой строкой находится строка состояния, отражающая статус команды, выполняемой в текущий момент, а также предупреждения и сообщения об ошибках. В строке состояния также может появиться приглашение, если требуется принятие решения. gitaction - входит в состав GIT и выполняет определенное •ействие для каждого казанного файла. Синтаксис git gitaction - это сценарий, вызываемый программой git при нажатии F2 и выполняющий определенное действие для каждого заданного типа файла. Если файл текстовый, на экран будет выведено его содержимое, если файл графический, то вызванная программа kview выведет на экран изображение, архивный файл вначале будет распакован и т.д., и т.п. "Знает" gitaction форматы е!Г, html, форматы почтовых draft (предварительных сообщений) и многое другое. gitkeys - входит в состав GIT; выводит последовательность кодов клавиш клавиатуры. инта gitkeys Программа gitkeys выводит последовательности кодов, получаемых при нажатии клавиш. Работа программы завершается при нажатии клавиши SPACB (проосл).
II. Команды 293 Пример На рисунке показана панель программы gitkeys. ■ root@localhostlocaldomaiir. /root -i.D X, Файл Правка Settings Справка CrootGlocalhost /root]** gitkeys GNU Interactive Tools 4.3.19 - Display key sequence utility GIT is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. Copyright (C) 1993-1998 Free Software Foundation, Inc. Written by Tudor Hulubei and Andrei Pitis, students at PUB, Romania Press SPACE when done. 7a 78 63 76 62 6e 6d 2c 2e 2f dl de d3 cd c9 d4 d8 c2 cO 2f I CJltmOUnt - входит в состав GIT, позволяет монтировать любое блочно-специальное устройство. Синтаксис gitmount device gitmount - сценарий автомонтирования, позволяющий подключить любое блочное устройство, не указывая тип файловой системы. Пользователь может, например, установить дискету и набрать gitmount fdO. Дискета будет подключена к каталогу /mnt/fdO, который будет автоматически создан, если он не существовал до того. Пользователю ничего не требуется знать о типе монтируемой файловой системы, gitmount все определит самостоятельно и выдаст на экран соответствующее сообщение. Пример t gitmount fdO £dO:vfat t Программа gitmount установила, что на дискете имеется файловая система vfat. QltpS - предназначена для вывода информации о процессах, а также может выдать сигнал об их завершении. Синтаксис gitps [option] Входит в состав GIT
294 II Команды Опции -h Выводит краткую справку по опциям. -v Выводит номер версии GIT. -с Использует ANSI-цвета. -Ь Не использует ANSI-цвета. -р Передает остаток параметров команде ps. gitps обращается к ps и передает ей параметры. Запускается gitps из командной строки. Пользователь может применять "Г1, Ф, Page-Up, Page-Down, Home, End и AL (получение нового состояния процессов), с помощью F10 можно выйти из gitps. Установку сигналов (крайнее правое поле внизу) для отправки выбранному процессу можно осуществить с помощью клавиши Enter. Пример На рисунке приведена панель gitps. ш GNU Interactive Tools - ps Файл Правка Settings Справка GNU Interactive Tools 4.3.19 - Process Viewer/Killer PIE TTY TIME СМБ 2203 Pts/1 00:00:00 bash 2213 ptsVl 00:00:00 find 2214 pts/1 00:00:00 gitps 2215 ptsA 00:00:00 ps frrous-HOVE Enter-SIGNflLS ^.-REFRESH "XT./F10-QUIT "Xk-KILL SICHUP % J QltrCjrGp - рекурсивная команда grep, входит в состав GIT. Синтаксис gitrgrep [дгер-like-options] gitrgrep - маленький сценарий, рекурсивно вызывающий grep и передающий ей опции и параметры grep-like-options. В отличие от grep спецификации файлов обязательно окружаются кавычками. Пример $ gitrgrep -1 info ■*.*" /home/misha/: /home/misha/Desktop/: /home/misha/Desktop/Autostart/: /home/misha/Desktop/Teniplates/: /home/misha/Desktop/Trash/: /home/misha/.kde/: /home/misha/.kde/share/: /home/misha/.kde/share/applnk/: /home/misha/.kde/share/аррв/:
11. Команды /home/misha/.kde/share/apps/kdehelp/: Vhome/misha/.kde/share/apps/kdisknav/: /home/misha/.kde/share/apps/kfm/: /home/misha/.kde/share/apps/kfm/bookmarks/: /home/misha/.kde/share/apps/kfm/tmp/: /home/misha/.kde/share/apps/kpanel/: /home/misha/.kde/share/apps/kpanel/applnk/: /home/misha/.kde/share/apps/ksokoban/: /home/misha/.kde/share/apps/kdeui/: /home/misha/.kde/share/config/: /home/misha/.kde/share/icons/: /home/misha/.kde/share/icons/mini/: /home/misha/.kde/share/mimelnk/: /home/misha/.xauth/: /home/misha/.gnome/: /home/misha/.gnome/accels/: /home/misha/.gnome/apps-redhat/: /home/misha/.gnome/apps-redhat/Administration/: /home/misha/.gnome/apps-redhat/Games/: /home/misha/.gnome/apps-redhat/Games/Video/: /home/misha/.gnome/apps-redhat/Dtilities/: /home/misha/.gnome/apps-redhat/Dtilities/Mail/: /home/misha/.gnome/apps/: /home/misha/.gnome/panel.d/: /home/misha/.gnome/panel.d/default/: Applet_2.desktop /home/misha/.ее/: /home/misha/.ее/icons/: /home/misha/.ее/minis/: /home/misha/.ee/minis/home/: /home/misha/.ee/minis/home/misha/: /home/misha/.ee/minis/mnt/: /home/misha/.ee/minis/mnt/floppy/: /home/misha/.gnome_private/: /home/misha/nsmail/: /home/misha/.enlightenment/: /home/misha/.enlightenment/themes/: /home/misha/.mc/: /home/misha/.gnome-help-browser/: /home/misha/.gnome-desktop/: /home/misha/.gnome-desktop/E+TL++++--T+L+-/: /home/misha/.gnome-desktop/fdO/: /home/misha/practice/: /home/misha/rcs/: /home/misha/RCS/: /home/misha/.netscape/: cert7.db /home/misha/.netscape/cache/: /home/misha/.netscape/archive/: /home/misha/cvsdir/: /home/misha/rab/: /home/misha/rab/person/: /home/misha/rab/test/: /home/misha/rabl/: /home/misha/rabl/CVSROOT/: /home/miBha/rabl/wv/:
296 II Команды /home/misha/rabl/vvv/rab/: /home/misha/rabl/vvv/rab/ person/: /home/misha/rabl/vvv/rab/test/: /поше/misha/git/: $ QltUnpdCk - унифицированный распаковщик архивов, дящий в состав GIT. вхо- Си. сие gitunpack dir file— gitunpack - сценарий оболочки, принимающий каталог dir и набор архивов file в качестве аргументов командной строки. Производит распаковку архивов в указанный каталог dir, подбирая для этого подходящую утилиту, исходя из расширений архивов. Пример Необходимо распаковать в каталог git все файлы архивов текущего каталога. т misha@localhost.localdomain: /home/misha CnishaSlocalhost misha]$ gitunpack git *.* /usr/bin/gitunpack: photo01.gif: unknown archive type /usr/bin/gitunpack: photo02.gif: unknoun archive type /usr/bin/gitunpack: photo08.gif: unknoun archive type /usr/bin/gitunpack: photo09.gif: unknoun archive type /usr/bin/gitunpack: photol0.gif: unknown archive type m: невозможно удалить *prim43.Z'; No such file or directory rm: невозможно удйлить "prim44.Z': No such file or directory rm: невозможно чдялить ^prim45.Z': No such file or directory /usr/bin/gitunpack: proba.jpeg: unknouin archive type /usr/bin/gitunpack: proba.tiff: unknouin archive type /usr/bin/gitunpack: rcs06.gif: unknoun archive type Файлы архивов prim43.Z, prim44.Z и prim45.Z распаковываются в каталог git, но сами оригинальные архивы при этом сохраняются. Для gitunpack все графические файлы являются архивами неизвестного типа, но их и не требуется распаковывать. gitview - входит в состав GIT и предназначена для вывода содержимого файла в шестнадцатеричном формате. Синтаксис gitview [option] file пции Выводит краткую справку по опциям. Выводит номер версии G1T.
II. Команды -с Использует ANSI-цвета. -Ь Не использует ANSI-цвета. Выводит содержимое файла file в шестнадцатеричном и ASCII форматах. Пользователь может применять 1\ Ф, Page-Up, Page-Down, Home, End. С помощью F10 можно выйти из gitview. В поле Seek at: набирается offset - смешение, начиная с которого производится вывод. Пр ер Ниже показана панель gitview при выводе содержимого файла. в GNU Interactive Tools - File: prim30 _ о х Файл Правка Settings Справка GNU Interactive Tools 4.3.19 - Hex/fiscii File Viewer File; prim30 Offset 00 01 02 03 04 05 06 07 08 09 Oft 0B 0C OB 0E OF fiscii 00000030 20 El B0 B2 20 20 33 30 20 20 31 37 3fi 30 34 20 ... 30 17:04 00000040 20 6E 73 6B 61 69 6C 0Й 2B 72 77 2B 72 2D 2D 72 nsnail.-rw-r—r 00000050 2B 2B 20 20 31 20 20 20 72 6F 6F 74 20 20 72 6F — 1 root ro 00000060 6F 74 20 20 33 38 20 20 20 20 El ВО В2 20 20 33 ot 38 ... 3 Seek at: | »rou)s/P9Up/P9Boun/Hone/End-WOVE ~L-REFRESH "XT/FIO-QUIT 0-9/a-f/R-F^OFFSET CJprOT определяет производительность программ на языке С, Pascal или Fortran 77. Синтаксис gprof [-abcszv]I-e|-E name] [-f |-F nameW-V fronmame toname] lobjfile [gmon.out]] gprof создаст профиль выполнения программ на языках С, Pascal или Fortran 77. Информация по каждому вызову любой подпрограммы накапливается в профиле. Эти данные извлекаются из профиля графа вызовов - по умолчанию файл gmon.out. который создается при компиляции программ с опцией -pg компиляторами ее, рс и П7. Программа gprof считывает заданный объектный файл objfile и устанавливает соответствие между его таблицей символов (идентификаторов) и профилем графа вызовов gmon.out. gprof подсчитывает время, затраченное на выполнение каждой подпрограммы. Затем это время распределяется между вершинами графа вызовов. Опции Не информирует о статических функциях. Вся информация по таким функциям - время выполнения, обращения к другим функциям и из других функций - принадлежит функции, загружаемой до статической.
298 II. Команды -b He выводит описание каждого поля профиля. -с Перекрывает статический граф программы эвристическим, анализирующим текстовое пространство объектного файла. -е пате Запрещает выводить элемент графа для подпрограммы по имени пате и всех вызываемых ею подпрограмм. Может быть задано несколько таких опций, но с каждой опцией -е указывается только одно имя. -Е пате Аналогична опции -е, но не информирует о времени, затраченном на подпрограмму по имени пате. -f name Печатает элемент графа для подпрограммы по имени пате и всех вызываемых ею подпрограмм. Может быть задано несколько таких опций, но с каждой опцией -f указывается только одно имя. -F пате Аналогична опции -f, но информируеттолько о времени выполнения подпрограммы по имени пате. Опция -F перекрывает опцию -Е. -k fromname toname Запрещает информировать о вызовах подпрограммы toname из fromname. -s Создает профиль gmon.sum, содержащий итоговую информацию по всем указанным профилям. -v Выводит информацию о версии программы и завершает ее. -z Выводит имена подпрограмм, время выполнения которых равно 0, т.е. они ни разу не вызывались. С|Гбр - печатает строки, совпавшие с шаблоном. Синтаксис дгер l-[ABC]nujn]I-EFGHLDVZabchilnqrsuvwxyz][-e pattern\-f file] 1-d action]]—directories=action] [—extended-regexp] [—fixed-strings] [—basic-regexp][—regexp=pattern][—file=file] I—ignore-case] [ —word-regexp ] [ —line-regexp ] [ —no-messages ] [ —invert-match ] [—version][—help]]—byte-offset][—line-number] [—with-f ilename] [ —no-filename ] [ —quiet ] ] —silent ] [ —text] [ —f iles-without-match ] [—files-with-matches][—count][—before-context=num] I —after-context=nun] [ —context=num] [ —binary] [ —unix-byte-of f sets] [ —mmap ] [ —null ] [ —recursive ] [ file ] Команда grep ищет в поименованных входных файлах file строки, содержащие заданный шаблон (образец) pattern. Если имена файлов file не заданы, в качестве входного файла предполагается стандартный ввод. По умолчанию grep печатает совпавшие строки. Существуют три разновидности grcp, управляемые следующими опциями: -G, -basic-regexp Интерпретирует шаблон pattern как базовое регулярное выражение. Это положение принято по умолчанию.
II. Команды 299 -Е, -exteuded-regcxp Интерпретирует шаблон pattern как расширенное регулярное выражение. -F, -fixed-strings Интерпретирует шаблон pattern как список фиксированных строк, разделяемых символом пси line (новая строка), любая из которых должна быть сопоставима. Любые варианты grep понимают перечисленные ниже опции. Оп ии -А пит, —after-context=num Печатает строки завершающего контекста в количестве пит после совпавших строк. -В пит, —before-context=num Печатает строки завершающего контекста в количестве пит до совпавших строк. -С пит, —context=«um Печатает пит строк выходного контекста. По умолчанию - две строки. -пит То же, что и --context=n«m строк предшествующего и завершающего контекста. Команда grep никогда не печатает любую заданную строку более одного раза. -V, —version Направляет номер версии grep в стандартный файл ошибок. -b, —byte-offset Печатает смещение в байтах внутри входного файла до каждой строки вывода. -с, —count Вместо обычного вывода для каждого входного файла печатает количество совпавших строк. Если указана также опция -v, печатает количество несовпавших строк. -d action, —directories=ac/ion Если входной файл является каталогом, для его обработки применяется параметр action. По умолчанию action установлен в значение read: это означает, что каталоги считываются, как если бы они были обычными файлами. Если action установлен в значение skip, каталоги молча пропускаются. И если action - recurse, команда grep считывает все файлы под каждым каталогом рекурсивно, что эквивалентно опции -г. -е pattern, —Teg,exp=pattern Использует pattern в качестве шаблона (образца), что полезно для защиты шаблонов, начинающихся с дефиса. -{file, ~fi\t=file Получает шаблоны из файла/?/е по одному в каждой строке. -Н, — with-filename Печатает имя файла для каждого найденного сопоставления. -h, ~no-filename Выполняя поиск по ряду файлов, не добавляет их имена в выходном файл.
300 II Команды -i, —ignore-case При поиске игнорирует чувствительность к регистру в шаблоне и во входных файлах. -L, — files-without-match Запрещает обычный вывод, печатая лишь имена входных файлов не содержащих образец. Просмотр завершается на первом найденном совпадении. -1, — files-with-matches Выводит лишь имена входных файлов, строки которых содержат образец. Просмотр завершается на первом найденном совпадении. -п, —line-number Формируя вывод, добавляет номер к каждой строке в пределах ее входного файла. -q, —quiet, —silent Запрещает обычный вывод. Обработка завершается на первом найденном совпадении. -г, —recursive Считывает все файлы каждого каталога рекурсивно; эквивалентна опции -d recurse. -s, —no-messages Запрещает выдачу сообщений об ошибках по поводу несуществующих или несчитываемых файлов. -a, —text He запрещает вывод строк, содержащих двоичную информацию. Обычно, если несколько первых байт указывают, что файл содержит двоичную информацию, команд grep выводит только сообщение, уведомляющее о найденном совпадении с шаблоном. Эта опция заставляет команду grep трактовать файл как текстовый. -v, —invert-match Действует наоборот - выбирает несовпадающие с шаблоном строки. -w, —word-regexp Выбирает только те строки, где найдено совпадение целого слова с образцом. -х, —line-regexp Выбирает только строки, полностью совпавшие с образцом. -у Эта опция - синоним опции -i. -U, —binary Рассматривает файл как двоичный и, в отличие от обычной обработки, не отбрасывает символы CR (carriage return - возврат каретки). Эта опция неэффективна иа платформах, отличающихся от MS DOS и MS Windows. -u, —unix-byte-offsets Отчитывается о смещении в байтах так, будто обрабат ывлет текстовые Unix-файлы, т.е. обрабатывая символы CR. Эта опция эффективна лишь с опцией -Ь.
II. Команды 301 —mmap Считывая входной файл, вместо заданного по умолчанию системного вызова read использует mmap, если это возможно. В ряде случаев системный вывод mmap способствует увеличению производительности обработки, но может привести к непредсказуемым результатам (дамп памяти), если при обработке произойдет ошибка ввода/вывода. -Z, —null Выводит нулевой байт (0 - символ ASCII) вслед за именем файла. А команда grep -1Z выводит нулевой байт после каждого имени файла вместо обычного символа newline. Чтобы обработать имена файлов, даже если они содержат символы newline, эта опция используется вместе с некоторыми командами: find -print sort -г. -z, —null-data Считает, что строку данных завершает нулевой байт вместо newline. Пример Необходимо вывести все строки файла prim62, содержащие выражения input/output или input-output: S grep "input[/-Joutpuf prim62 input/output errors fast input-output S grephistory - выводит имена файлов из файла history службы Usenet. Синтаксис grephistory [-еЦ-f filename] [-h] [-i] [-1] [-n] [-o] [-q] [-s] [-T] [-t] [messageid] Для любой статьи, имеющей указанный messageid (идентификатор сообщения) или ключ хеширования заданного messageid, команда grephistory запрашивает в файле history индекс dbz. Параметр messageid командной строки grephistory соответствует Message-ID (идентификатору сообщения); если программа не может найти в БД упомянутый параметр, она выводит текст Not found и завершается с ненулевым кодом. Если в БД обнаружен указанный messageid, программа grephistory выводит маршрут или маркировку статьи, если статья хранится в api-хранилище, и благополучно завершается. Опции -е Печатает только имя файла с маркером существующей статьи. -f Позволяет указывать отличающиеся значения для файла history и БД. -h Распечатывает ключ хеширования сообщения Message-ID, даже если оно отсутствует.
302 II Команды -i Считывает список Message-ID со стандартного ввода. В каждой строке содержится по одному идентификатору, при этом головной и завершающий пробелы игнорируются. На стандартный вывод распечатываются Message-ID, не найденные в БД. -1 Выводит полную строку файла history. -п Если не один маршрут не существует, программа печатает /dev/null (фиктивное устройство) и благополучно завершается. Это может случиться, если статья была уничтожена или истек срок ее хранения, но сведения о ней все еще сохраняются в файле history. -о Будет выводить обзор о заданной статье. Этот флаг доступен, если <DBZ TAGGED HASH in config.data> установлен в значение DONT и параметр extendeddbz включен в файл inn.conf. -q He выводит ни одно сообщение. -s Считывает подобный список со стандартного ввода самой программы grephistory. На стандартный вывод печатается список имен файлов для каждой доступной статьи. -Т Будет выводиться только смещение обзора данных по статье. Этот флаг доступен, если <DBZ TAGGED HASH in config.data> установлен в значение DONT и включен extendeddbz в inn.conf. -t Печатается только смещение по текстовому файлу history. grodvi - преобразует вывод groff в формат ТеХ. Синтаксис grodvi (-dv] [-vn] [-Fdir] [file ] Язык верстки ТеХ (система верстки текстов teTeX) использует формат dvi. Созданный с помощью программы grodvi файл file может быть распечатан любым dvi-драйвером. Оп ии -d He использует tpic (препроцессор pic рисует в режиме, пригодном для ТеХ) для выполнения команд рисования. -v Выводит номер версии программы. -wn Устанавливает по умолчанию толщину линии в и тысячных от т-про- бела. -Fdir Устанавливает каталог rfir/devdvi для нахождения шрифтов и файлов описания устройств.
II. Команды groff - обеспечивает интерфейс для работы с системой форматирования groff. Синтаксис groff [ -tpeszvhlNRVXZ ] [ -Parg] [ -harg] \ -Idev] [ -f fam] [ -nnujn] I -olist] [file...] Основные опции -h Выдает справку по опциям команды. -е Выполняет препроцессорную обработку с eqn - программой форматирования уравнений, математических выражений, формул. -t Выполняет препроцессорную обработку с tbl - программой форматирования таблиц. -р Выполняет препроцессорную обработку с pic-программой форматирования рисунков, при этом входные команды распознаются ТеХ и troff. -s Выполняет препроцессорную обработку с soelim - программой, интерпретирующей запросы типа .so из входного потока. Это необходимо для обработки файлов, включаемых с помощью .so. -R Выполняет препроцессорную обработку с refer - программой, обрабатывающей библиографические ссылки в документах системы groff. -v Сообщает о версиях программ системы groff. -V Направляет конвейер команд на стандартный вывод, не выполняя их. -z Подавляет вывод troff, печатает только сообщения об ошибках. -Z Перекрывает вывод постпроцессора из troff. -Parg Передает указанный аргумент постпроцессору. -1 Направляет вывод на принтер. -Lorg Передает аргумент org для обработки текста в спуле (временном файле) печати. -Tdev Готовит вывод для устройства dev, по умолчанию - ps. -X Вместо обычного постпроцессора использует просмотр под XI1. -ffam Применяет fain в качестве семейства шрифтов, принятого по умолчанию. -пиши Начинает нумеровать первую страницу с номера тип. -olist Печатает только страницы из указанного списка list (см. опцию -о команды troff). -N Запрещает использовать символы newline в разделителях cqn. Обычно groff запускает troff и постпроцессор, готовящие документы для вывода на определенном устройстве (см. опцию-Т). Параметр dev может принимав следчю- щие значения:
304 II. Команды ps принтер в формате PostScript dvi формат, принятый в ТеХ Х75 предварительный просмотр под X Window с разрешением 75 dpi fdots per inch - точек на дюйм) XI00 предварительный просмотр под X Window с разрешением 100 dpi ascii устройство построчной печати (без форматирования) latinl устройство построчной печати, использующее набор символов ISO Latin-l Постпроцессор задается командой postpro в файле описания устройств. CjrOlj4 - вызывает специальный groff-драйвер для принтеров семейства HP Laserjet 4. Синтаксис grolj4 [-lv][-d[n]][-cd]l-psize]l-vn][-Fdir][file...] Драйвер grolj4 создает вывод в формате PCL5, пригодном для принтеров семейства HP Laserjet 4. On ии -en Печатает п копий каждой страницы. -1 Печатает документ в альбомной (landscape) ориентации. -d[n] Устанавливает дуплексный режим в соответствии со значением и: 1 компоновка по длинной стороне 2 компоновка по короткой стороне По умолчанию принято значение 1. -psize Устанавливает размер бумаги в значение size, которое может быть одним из следующих: letter (формат письма), legal (принятый в США для документов), executive, a4, comlO, monarch, c5, Ь5, dl. -v Печатает номер версии программы. -wn Устанавливает по умолчанию толщину линии в и тысячных от ш-про- бела. -Fdir Устанавливает каталог <ftV/devlj4 для нахождения шрифтов и файлов описания устройств. groupadd - создает нов ю групп пользователей. Синтаксис groupadd [-g gid [-о]][-г][-f] group Создает новую группу по имени пате.
II. Команды 305 Опции -g gid [-о] Создает группу с уникальным идентификатором gid, если только не задана опция -о. По умолчанию это значение больше 499, а также больше любого идентификатора существующих групп. Опция -о разрешает дубликовать GID в пределах системы. -г Добавляет системный счет и автоматически выбирает первый доступный GID меньший, чем 499, если только не задана опция -g. -f Аварийно завершает команду groupadd, если добавляемая группа уже существует в системе. Команда используется только суперпользователем. Пример f groupadd -g 541 шопасо f groupdel удаляет группу. С "кс groupdel паше Удаляет группу с именем name. Используется только суперпользователем. Пример f groupdel misha groupdel: cannot remove user's primary group. t Удаление группы по имени misha не состоялось, так как невозможно удалить первичную группу, если входящий в нее пользователь по-прежнему имеет счет в системе. QTOUpS - выводит список групп, членом которых является К. указанный пользователь. Синтаксис groups [option]... [username]... Печатает имена основных и дополнительных групп для всех заданных в командной строке имен username или же для текущего процесса, если не указано имя пользователя. пци —help Выводит краткую справку по команде и завершает ее выполнение, —version Выводит информацию о версии команды и завершает ее выполнение.
306 II Комаеды Пример $ groups Sofia root Sofia : Sofia root : root bin daemon sys adm disk wheel $ С|ГрСК - пр еряе елостность файла групп. ис grpck I-г JI group gsbadow] По умолчанию проверяет соответствие файлов /etc/group и /etc/gsbadow. Хотя с помощью аргументов group и gshadow пользователь может выбрать альтернативные файлы. Проверке подлежат уникальность имен групп, корректность списков членов групп и администраторов, а также количество полей в записях. Опции -г Проводит изменения без участия пользователя: предполагается, что на все вопросы, касающиеся изменений, был получен ответ по (нет). Команда используется только суперпользователем. CjrpCOIlV - оперирует обы - евы фа" - - груш и такси grpconv Программа grpconv очень похожа на pwconv с той лишь разницей, что вместо файлов паролей пользователей оперирует аналогичными файлами групп: /etc/group (главный файл групп) и /etc/gsbadow (файл теневых паролей групп). grpconv создает файл теневых паролей gshadow из основного файла групп (group) и существующего (необязательного) файла gshadow. CjrpUnCOflV - оперирует обычными и теневыми файлами групп. Синтаксис grpunconv Программа grpunconv очень похожа па pwunconv с той лишь разницей, что вместо файлов паролей пользователей оперирует аналогичными файлами групп: /etc/group (главный файл групп) и /etc/gshadow (файл теневых паролей групп). grpunconv создает файл групп из существующего основного файла group и из теневого файла gshadow, а затем удаляет последний.
II. Команды 307 CJS вызывает Ghostscriit. Синтаксис gs [option][file] Команда gs вызывает Ghostscript - интерпретатор Adobe PostScript с языком PDF (Portable Document Format - мобильный формат документа), gs считывает файлы file в указанной последовательности и выполняет их как программы Ghostscript, после чего считывает стандартный входной поток (обычно с клавиатуры), интерпретируя каждую отдельную строку. Введенная команда quit (Ctrl+D, Ctrl+C) завершает работу интерпретатора. Оп ии — filename arg\... Берет следующий аргумент filename в качестве обычного имени файла, а остальные аргументы (argl и т.д.), даже если им присущ синтаксис переключателей, рассматривает как массив строк и определяет имя ARGUMENTS в userdict до запуска файла. Когда Ghostscript завершает выполнение этого файла, он возвращается в оболочку. -Dname=token, -dname=token Описывает имя пате в systemdict с заданным определением token. Параметр token - только одна лексема без пробелов. -Dname, -йпате Описывает имя пате в systemdict с нулевым значением. -Sname=string, -sname=string Описывает имя пате в systemdict, определяя в качестве его значения указанную строку string. -q Запрещает печатать обычные стартовые сообщения. -gnumberl xnumber2 Эквивалентно указанию -dDEViCEWIDTH=nHmfcerl и -dDEVICEHEIGHT=nK/nfcer2. Задает ширину и высоту для устройств, например, размеры окон в XI1. -тпитЬеЛ xnumber2, -rnumber Эквивалентно указанию -dDEVICEXRESOLUTIOIN-wMmfcerl и -dDEVICEYRESOLLT[ON=n«m/)e;-2. Опция используется для >ст- ройств, например принтеров, поддерживающих разные разрешения по осям X и Y. Если задано только одно значение, используется одинаковое разрешение по осям X и Y. Adir Добавляет указанный список каталогов в начало маршрутов поиска файлов библиотек. Указывает Ghostscript, что стандартный ппол причет из файла нпн по конпейеру, но не ни теракт кино - черс! командную с гроку
308 II. Команды При циальные имена -dDlSKFONTS Задает схему символов для шрифтов, загружая файл шрифтов. -dNOCACHE Запрещает кэширование символов. Приемлемо только для отладки. -dNOBIND Запрещает оператор bind. Приемлемо только для отладки. -dNODISPLAY Запрещает обычную инициализацию устройства вывода. Приемлемо только для отладки. -dNOPAUSE Отключает вывод приглашения и паузу в конце каждой страницы -dSAFER Открывает файлы только для чтения. -dWRITESYSTEMDICT Оставляет возможность перезаписи словаря systemdict. -sDEVICE=rfevice Выбирает альтернативное начальное устройство вывода. -sOutputFile=^?/ename Выбирает альтернативный выводной файл или конвейер в качестве начального устройства вывода. Пример Если в вашей системе имеется такой прекрасный образец в формате PostScript, то вы сумеете его вывести на экран с помощью следующей команды: $ gs /usr/share/ghoEtscript/5.50/examples/tiger.ps Страшен, но не кусается! gtk-config - позволяет получить информацию об инсталлированной версии GTK+. Синтаксис gtk-config [—prefix[=prefijr] ][—exec-prefix[=prefix] ] [—version} [—libs] I— cflags] GTK+ (Gimp Tool Kit) - графический инструмент для создания графических приложений. GTK+ работает под X и поддерживает многочисленные языки программирования, включая С, C++, Perl и др. gtk-config - сценарий, позволяющий конфигурировать и определять флаги компилятора и компоновщика для приложений, использующих GTK+. Опции —version Печатает текущую версию GTK+. --libs Печатает флаги компонопщика, необходимые для еоздпппемых приложений GTK+.
II. Команды 309 —cflags Печатает флаги компилятора, необходимые для создаваемых приложений GTK+. —prefix=/?/-e/ix Использует альтернативный префикс вместо принятого при инсталляции. Если опция —exec-prefix не задана, использует prefix в качестве префикса имен исполняемых файлов. Эта опция должна быть задана до —libs или —cflags. —exec-prefix=pre/iA: Использует альтернативный префикс в качестве префикса имен исполняемых файлов. Эта опция должна быть задана до —libs или —cflags. Примеры Так может выглядеть makefile для компиляции и компоновки программы: СОдсс LDLIBS=~ gtk-config —libs" CFLAGS=-Hall -g "gtk-config —cflags' buttonwin: buttonwin.o S(CC) S(LDLIBS) buttonwin.o -o buttonwin buttonwin.o: buttonwin.с $(CC) $(CFLAGS) -c buttonwin.o clean: гш -f buttonwin rm -f *.o Обратите внимание, как gtk-config используется в makefile. Команда заключена в обратные кавычки, что вынуждает make выполнять ее и считывать строку вывода для сохранения в переменной. В этом makefile определены две переменные - LDLIBS and CFLAGS, - необходимые для компиляции и компоновки. CjUnZip - распаковывает архивы, ранее созданные с помощью gzip или com • ress. интаксис gunzip [-cfhlnrtvV][-S suffix][паше... J Распаковывает сжатые файлы name, имеющие расширения .gz, -gz, .z, -z. _z. .Z. Команда gunzip замещает сжатые файлы их оригинальными версиями, удаляя расширения из имен файлов. В настоящее время gunzip может распаковать архивы, созданные gzip, zip, compress и pack. Распознавание входного формата производится автоматически. Команда gunzip также различает специальные расширения .tgz и .taz как сокращения для соответственно .tar.gz и .tar.Z. Содержание опций команды gunzip см. в описании gzip.
310 II. Команды CJV - просматривает в X Window документы в формате PostScript и PDF. Синтаксис gv [filename][-monochrome](-grayscale][-color][-[nojsafer][-[nojquiet] [-arguments arguments][-page label] [-[no]center][-media media] [-portrait][-landscape][-upsidedown][-seascape][-scale n] [-scalebase n] [-swap] [-noswap] [-antialias][-noantialias] [-dsc] [-nodsc] [ -eof ] [ -noeof ] [ -pixmap ] [ -nopixmap ] [ -watch ] [ -nowat ch ] [-?][-h][-help] [-v][-resize][-noresize][-geometry [width][xbeight] I {+-}xoffset{+-}yoffset] [ -ad resource_f He] [ -style resource_file] [-spartan][other_toolkit_options] Просматривает файлы по имени_/?/е«атее. Просматривает даже сжатые файлы (gzip, zip, compress). Для просмотра PDF-файлов требуется версия Ghostscript не ниже 4.x. Опции -ad resource Jile Считывает и использует дополнительные ресурсы из указанного файла. Эти ресурсы имеют более высокий приоритет, чем предлагаемые опцией -style. -antialias, -noantialias Не использует либо использует псевдонимы. -arguments arguments Запускает Ghostscript с дополнительными опциями, задаваемыми строкой arguments. -center, -nocenter Устанавливает либо нет автоматическое центрирование страниц. -dsc, -nodsc Анализирует либо нет структуру документа в соответствии с существующими соглашениями по структуре. -eof, -noeof Учитывает или нет EOF в конце документа. -geometry [width][xheighi][{+-}xoffset{+-}yoffset] Устанавливает предпочтительный размер и расположение изображения. -v Выводит информацию о версии программы и завершает ее. -h, -? Выводит краткую справку и завершает программу. -help Выводит более подробную справку и завершает программу. -scale п Выбирает коэффициент масштабирования относительно 1.0. Параметр и должен быть целым числом. -scalebase n Выбирает основу масштабирования; параметр и всегда целое положительное число.
II. Команды 311 -monochrome, -grayscale, -color Устанавливает используемую цветовую палитру: -monochrome монохромное изображение -grayscale изображение в градациях серого -color цветное изображение -media media Выбирает размер используемой бумаги. -page label Выводит в начале страницы заданную метку label. -pixmap, -nopixmap Пытается поддерживать заэкранные области отображаемой страницы в случае большого цветного растрового изображения. Если используется опция -nopixmap, Х-сервер пытается поддерживать затененные части отображаемой страницы. -portrait, -landscape, -seascape, -upsidedown Устанавливает ориентацию: -portrait портретная -landscape альбомная -seascape морской пейзаж -upsidedown перевернутая портретная -quiet, -noquiet Стартует gv в режиме вывода либо минимальных сообщений, либо подробных. -resize, -noresize Автоматически подстраивает или нет размер своего окна к размеру отображаемой страницы. -safer, -nosafer Открывает либо нет файлы только для чтения. -spartan Отображает в стиле gvspartan. -style resourceJile Считывает и использует дополнительные ресурсы из указанного файла. -swap, -noswap Меняет либо нет значения ориентации landscape и seascape. -watch, -nowatch Устанавливает или нет периодическую проверку документа с целью нахождения более новой версии документа. QZ6X6 - паковывает исполняемые файлы. Синтаксис gzexe [-d]{name...] Утилита gzexc позволяет запаковать исполняемые файлы патг и затем авгомаш- чески распаковать, если пользователь запустит их па выполнение. Очень чкономнг тисковое пространство.
312 II Команды Опции -d Вместо сжатия распаковывает заданный исполняемый файл. CJZip - сжимает файлы. Синтаксис gzip [-acdfhlLnNrtvV19][-S suffix][file ...] Упаковывает перечисленные файлы пате и существенно уменьшает их размер, используя кодирование по методу Лемпел-Зив (Lempel-Ziv). При выполнении упаковки каждый файл замещается сжатой версией с таким же именем, как у оригинального, к которому добавляется расширение .gz; сохраняются владелец, группа, полномочия, а также временные метки оригинала. Если имена файлов не указаны или вместо имени стоит дефис, содержимое стандартного ввода упаковывается и пересылается на стандартный вывод. Команда gzip только сжимает обычные файлы, игнорируя символические ссылки. Опции -а, — ascii Устанавливает текстовый режим и конвертирует концы строк в соответствии с локальными договоренностями. -с, —stdout, — to-stdout Направляет результат обработки на стандартный вывод, сохраняя оригинальные файлы неизменными. -d, --decompress, —uncompress Выполняет распаковку архивов, действует подобно gunzip. -f, —force Перезаписывает выходной файл и сжимает ссылки. -h, —help Выводит краткий список опций. -1, —list Выводит для каждого упакованного файла ряд полей: размер упакованного и оригинального файлов, коэффициент сжатия и т.д. -L, —license Выводит принятую для программы gzip лицензию и завершает ее. -n, --no-name При упаковке не сохраняет оригинальные имена и временные метки. -N, --name Сохраняет оригинальное имя и временную метку. -q, —quiet Подавляет печать любых предупреждений. -г, —recursive Рекурсивно выполняет упаковку файлов во всех каталогах. -S jsuf, —suffix .suf Использует указанный суффикс вместо .gz. -t, —test Проверяет целостность сжатых файлов. -v, —verbose Отображает в процессе обработки имена и процент сжатия. -V, —version Выводит информацию о версии программы и завершает ее. -1, —fast Указывает метод быстрого сжатия (минимальное сжагне).
II. команды 313 -9, —best Указывает наиболее медленный метод сжатия (наилучшее сжатие) По умолчанию принят уровень сжатия, равный -6 (разумный компромисс между уровнем сжатия и скоростью). Пример Имеет смысл конкатенировать упакованные файлы: § gzip -с nnn>archl.gz $ gzip -с prim68>>archl.gz $ В дальнейшем с помощью gunzip их можно легко распаковать буквально за одно обращение к архиву. halt останавливает систему. Синтаксис halt [-n][-w][-dir-f][-i][-p] Программа halt делает соответствующую отметку в файле /var/Iog/wtmp и затем предлагает ядру выполнить останов. Если команда halt вызвана, когда система не находится на уровне выполнения 0 или 6, вместо упомянутой команды будет вызвана shutdown с флагом -h или -г. 1ЦИ -п Не выполняет sync перед остановом. -w Фактически не выполняет останов, а лишь делает запись об этом в /var/Iog/wtmp. -d Ничего не записывает в файл /var/Iog/wtmp. -f Заставляет выполнять halt, а не shutdown. -i До останова системы завершает работу всех сетевых интерфейсов. -р Выполнив останов системы, отключает питание. Данная команда является привилегией суперпользователя. П6ЭС1 - выводит начало файла. К Синтаксис head [option] [file] — head -number [option]...[file]— Распечатывает начало (по умолчанию первые десять строк) каждого файла. Рели имена файлов не заданы или вместо имени файла стоит дефис, считывает стандартный ввод.
314 II Команды Если в командной строке указано несколько файлов, перед распечаткой каждого из них выводит однострочный заголовок, содержащий имя файла. Команда head поддерживает два формата опций: новый, в котором число является параметром опции, и старый, в котором число предшествует любой символьной опции. Опции -number Эта опция распознается, если только она указана в командной строке первой. Параметр number- десятичное число, за которым может следовать (необязательно) буква. Параметр number обозначает размер, в то время как следующая за ним однобуквенная опция - единицы измерения. -с hytes, ~bytes=bytes Вместо принятых по умолчанию начальных строк печатает содержимое указанного числа байт. Добавив к указанному количеству соответствующую букву, можно производить распечатку в блоках: b 512 байт к 1024 байт m 1048576 байт -п п, — lines=n Выводит первые п строк. -q, —quiet, —silent Не печатает заголовков, содержащих имена файлов. -v, —verbose Обязательно печатает заголовки, содержащие имена файлов. Пример Вызывает по две строки каждого файла: $ head -n2 prim8* ==> prime0 <== kb mode was XLATE ==> prim81 <== kb mode was RAW [ if you are trying this under X, it might not work ==> prim82 <== kb mode was RAW [ if you are trying this under X, it might not work ==> prim83 <== kb mode was RAH [ if you are trying this under X, it might not work ==> prim84 <== Typematic Rate set to 10,9 cps (delay = 250 ms) ==> prime5 <== int variable; /*... */ ==> prim86 <== !_TAG_FILEJFORMAT to lines/ I TAG FILE SORTED 2 /extended format; —format»1 will not append ;" 1 /0=unsortedf l=sorted/
II. Команды 315 =■=> prim87 <•= prim85,18 ==> prim88 <= <= I ==> prim89 <= hIStOry - манипулирует протоколом команд. В Синтаксис history [л] history -с history -d offset history -anrw [filename] history -p arg [arg ] history -s arg [arg...] В первом формате отображает п строк файла history (истории), или протокола команд, с номерами строк. Аргумент filename указывает имя файла, содержащего все введенные вами команды. Если filename отсутствует, извлекает имя файла-протокола из переменной окружения HISTFILE. -а Добавляет новые строки к протоколу команд. Эти строки обычно вводятся до начала текущего сеанса bash. -с Удаляет все элементы, очищая список history. -d offset Удаляет элемент протокола, указываемый смещением offset. -п Считывает еще не прочитанные строки в текущий список протокола команд. Эти строки добавляются к протоколу команд до начала текущего сеанса bash. -р arg [arg ...] Выполняет замещение в протоколе по следующему аргументу arg (каждый аргумент необходимо заключить в кавычки) и выводит результат на стандартный вывод. -г Считывает содержимое файла протокола команд и использует его как текущий протокол. -s arg [arg ...] Хранит перечисленные аргументы в протоколе команд как один элемент. Последняя команда в протоколе удаляется перед добавлением аргументов.
316 II Команды -w Записывает текущий протокол в стационарный протокол команд, пере крывая содержимое последнего. Можно назначить количество сохраняемых команд в файле history. Если вы добавите в ваш файл .login строку set history=I50, то, когда бы вы ни зарегистрировались, в протоколе команд будет фиксироваться до 150 командных строк. Приме• $ history 6 gitunpack git /misha/prim43.Z 7 GITMAN GITUNPACK 8 man gitunpack 9 umount /mnt/fdO 10 man gitunpack 319 rmdir —help 320 info rm 321 man rm 322 rmdir /rab/person 323 rmdir ./rab/person 324 man yes 325 expect —help 326 expect -h $ Чтобы повторить, например, команду за номером 320, достаточно ввести !320. host - выводит информацию о заданном узле Internet, используя DNS. Синтаксис host I-l][-v][-w][-r][-d][-t querytype][-B]hostlserver] Отображает информацию об указанном сетевом узле host, где аргумент host может представлять из себя имя или IP-адрес узла. Имя узла состоит из имен, разделенных точками; IP-адрес также задается в десятично-точечной нотации. Если имя указанного узла не оканчивается на точку, к нему будет автоматически добавлено имя локального домена. При поиске используется DNS (Domain Name System - система имен доменов). Информация приходит от взаимосвязанных серверов, разбросанных по стране (странам). По умолчанию команда host просто взаимно конвертирует имена в IP-адреса. Второй аргумент командной строки — server - не является обязательным. Он позволяет направить запрос к указанному серверу server. Если этот аргумент отсутствует, используется назначенный по умолчанию сервер имен доменов. Задав в командной строке краткое имя сетевого узла Internet, можно получить его полное доменное имя, IP-адрес (иногда несколько адресов по числу сетевых интерфейсов) и информацию о том, как доставляется элскт ронная почта для лого > зла.
II. Команды 317 Основные опции -t querytype -а -1 -с class Пример Приказывает постоянно ждать ответа. Обычно по истечении одной минуты устанавливается тайм-аут. Использует подробный формат вывода - официальный формат мастер- файла домена (см. named). Отключает режим рекурсии, т.е. сервер имен возвращает информацию только из собственной БД, не опрашивая других DNS-серверов. Включает режим отладки, подробно информируя о сетевых транзакциях. Разрешает указать тип просматриваемой информации. В настоящее время поддерживаются следующие типы (см. named): a, ns, md, mf, cname, soa, nib, mg, mr, null, wks, ptr, hinfo, minfo, mx, uinfo, uid, gid, unspec, any (для всех типов), * (синоним any). Упомянутые типы должны набираться на нижнем регистре. По умолчанию принимаются а и mx. Эквивалентна -v -t any. Выводит полный список сетевых узлов домена. Задает тип адреса, указанный в записи. Для IP-адресов этот параметр равен IN, для MIT Athena Hcsiod - HS и т.д. (см. nslookup). % host shv shv.dqdrmstadt.de is a nickname for SHAVA.DQARMSTADT.DE SHAVA.DQARMSTADT.DE has address 152.2.22.80 SHAVA.DQARMSTADT.DE mail is handled by RS10.DQARMSTADT.DE % В первой строке сообщается, что shv.dqarmstadt.de - сокращение, и что официальное имя узла - SHAVA.DQARMSTADT.DE. Далее обычно следуют строки, отображающие адреса. Для систем с несколькими сетевыми интерфейсами существует несколько адресов. Последняя строка содержит информацию об электронной почте, уведомляя, что почта приходит на RS10.DQARMSTADT.DE. hostname - отображает информацию об имени текущего узла или устанавливает новые. hostname [-v] {Aostname|-F file} hostname [-v] [-d|-f|-s|-a|-i|-y|-n] hostname [-v] hostname -v|—version|-h|—help Заданная без аргументов, hostname просто отображает имя текущего \злл сети: для отображения форматированного имени применяется трети» формат команды.
318 II Команды -v, -V -h, -s, -a. Опции —version —help —short —alias Супериользователь может использовать эту команду (первый формат) для установления нового имени узла hostname. Новое имя может быть назначено на основе таблицы имен узлов, по умолчанию хранящейся в файле /etc/hosts. Выводит информацию о версии программы и завершает ее. Задает подробный формат вывода, сообщающий об используемых системных вызовах. Выводит справочную информацию и завершает программу. Отображает короткое имя узла. Отображает существующие псевдонимы, -i, —ip-address Отображает IP-адрес узла. -f, —fqdn, —long Отображает длинное имя узла, или FQDN (Fully Qualified Domain Name - полное правомочное доменное имя). -d, —domain Отображает доменное имя системы DNS. -у, —ур, —nis Отображает доменное имя системы NIS/YP. -F file Устанавливает новое имя на основе таблицы узлов, хранящейся в указанном файле file. Пример t hostname diasoft I httpd - запускает WEB-сервер Apache. Синтаксис httpd [-X][-R libexecdir][-d serverroot][-f config][-C directive] [-c directive] [-D parameter] httpd [-h][-l][-Ll[-v][-V][-S][-tn-T] Ha WEB-сервере Apache поддерживается протокол HTTP (Hyper Text Transfer Protocol — протокол передачи гипертекста). Apache может работать в качестве демона, т.е. быть постоянно запущенным автономным процессом. При этом он создает набор дочерних процессов для обслуживания запросов. Чтобы их остановить, следует направить родительскому процессу сигнал TERM. И в качестве альтернативы httpd может быть вызван Internet-демоном inetd всякий раз, когда выполняется подключение к службе HTTP. Опции командной строки -R libexecdir Эта опция доступна лишь в том случае, если Apache создавался на основе правила SHAREDCORE, которое встраивает код WFB-сервера в файл DSO (Dynamic Shared Object - динамического разделяемого
II. Команды 319 объекта). По умолчанию этот файл отыскивается по четко заданному маршруту под директивой ServerRoot. Если вы хотите это поменять, используйте опцию -R. -d serverroot Устанавливает исходное значение для директивы ServerRoot в serverroot, что может быть перекрыто командой ServerRoot в файле конфигурации. -f config На старте выполняет команды из файла config. Если значение config не начинается со слэша, тогда берется маршрут относительно ServerRoot. По умолчанию таковым файлом является conf/httpd.conf. -С directive До чтения файлов конфигурации выполняет указанную директиву. -с directive Выполняет указанную директиву после чтения файлов конфигурации. -D parameter Устанавливает указанный параметр конфигурации, который может быть использован с секциями <IfDefine>...</IfDeime> конфигурационных файлов, чтобы пропустить по условию или выполнить команды. -h Выводит краткую справку о доступных опциях командной строки. -1 Выводит список модулей, включенных при компиляции в код Apache. -L Выводит список директив совместно с ожидаемыми аргументами, размещая их в том месте, где проверяется директива. -S Отображает установки файла конфигурации, прошедшие синтаксический анализ. В настоящее время лишь отображает установки виртуального узла. -t Запускает синтаксические тесты лишь для файлов конфигурации. После проведения тестов программа тотчас же завершается либо с кодом О, если ошибки не обнаружены (Syntax OK), либо в противном случае с кодом, отличным от 0 (Syntax Error). -Т То же, что и опция -t, но не проверяет файлы конфигурации. -X Выполняет запуск в режиме одного процесса, что полезно лишь для отладки и не пригодно для реального Web-сервера. -v Выводит информацию о версии и завершает программу. -V Выводит информацию о версии, строит параметры httpd и затем завершает его. hWClOCK - запрашивает и устанавливает аппаратные часы ЭВМ. интаксис hwclock -r|—show hwclock -w|—ByBtohc hwclock -в|—hctosvB hwclock -a |—adjust
320 II Команды hwclock -v|—version hwclock —Bet —date=newdate hwclock —getepoch hwclock —setepoch —epoch=year Вы можете вывести текущее время, установить показания аппаратных часов на указанное время или на системное, а также установить системное время от аппаратных часов. В Linux существуют две главные разновидности часов. Аппаратные часы работают независимо от любой управляющей программы, запущенной в ЦП, и даже когда компьютер выключен. Эти часы также называют RTC, часы BIOS, или часы CMOS. Системные часы - это часы внутри ядра Linux, управляемые по прерыванию таймера. Системное время - это количество секунд, прошедшее от 00:00:00 часов, 1 января, 1970 (UTC). Ему присуща фактически бесконечная точность. Команда hwclock устанавливает значение часового пояса в ядре в значение, определяемое переменной окружения TZ и каталогом /usr/Iocal/timezone, если вы назначаете системное время, используя опцию — hctosys. Опции —show Считывает показания аппаратных часов и выводит локальное время на стандартный вывод. —set Устанавливает аппаратные часы в значение, указываемое опцией —date. —hctosys Устанавливает системное время от аппаратных часов и часовой пояс в ядре в значение локального часового пояса, как определено TZ и /usr/Iib/zoneinfo. —systohc Устанавливает показания аппаратных часов на текущее системное время. —adjust Подстраивает показания, систематически добавляя или вычитая время аппаратных часов. —getepoch Печатает эпохальное значение аппаратных часов ядра (число полных лет, с которого начинается отсчет). —setepoch Устанавливает эпохальное значение аппаратных часов ядра в значение, указываемое опцией —epoch. —version Печатает информацию о вереи программы. - - date=date_string Указывает значение времени как datestring (см. date) и устанавливает показания аппаратных часов в это значение. —epoch=year Рассматривает аргумент year как начало эпохи для аппаратных часов. —utc, — localtime Сохраняет показания аппаратных часов соответственно в формате UTC или локального времени. —badyear Информирует, что аппаратные часы не в состоянии сохранять гот в диапозоне 1994-1999 (почти все компыогеры с Award BIOS, вып>щсн-
II. Команды 321 ные между 4/94 и 5/95). Чтобы компенсировать этот недостаток без обновлений BIOS, всегда используйте -badyear. В этом случае hwclock пытается определить год, основываясь на последней откалиброванной дате в файле adjtimc. Вам рекомендуется выполнять hwclock —set или hwclock —systohc по меньшей мере раз в году. Примеры и root@sofia: /root _ В X File Edit Settings Help [rootSsofia /root]» date Sun Dec 16 14:33:52 EET 2001 [rootSsofia /root]» huclock -r Sun Dec 16 14:34:09 2001 0.894156 seconds [rootSsofia /root]» huclock —systohc [rootSsofia /root]» date Sun Dec 16 14:35:20 EET 2001 [rootSsofia /root]» I id - печатает подлинные и действ ющие UID и GID. К Синтаксис id {option]..-Ivsernaae] Команда id выводит информацию об указанном пользователе usemame или текущем пользователе, запустившем эту команду, если имя пользователя не задано. По умолчанию печатает подлинные идентификаторы пользователей (UID) и групп (GID), действующие идентификаторы пользователей и групп, если они отличаются от подлинных, идентификаторы дополнительных групп. ПЦИ -g, -group -G, —groups -n, —name -r, —real Пример Печатает только идентификатор группы. Информирует только о дополнительных группах. Вместо идентификаторов печатает имена пользователей и групп. Используется совместно с опциями -u, -g или -G. Вместо действующих печатает подлинные идентификаторы пользователей и групп. Используется совместно с опциями -u, -g, или -G. Печатает только идентификатор пользователя $ id uid=500(Sofia) gid=500(sofia) groups=500(Bofia) $
322 II Команды ident И1енти«ици« ет в оайлах ключевые строки RCS ident [-q]I-V][file ] Команда ident отыскивает все образцы, соответствующие шаблону $keyword:text $ в поименованных файлах/i/e или, если имена файлов не указаны, в содержимом стандартного ввода. Эти шаблоны обычно включаются автоматически командой со системы RCS, но могут также быть включены вручную. Опции -q Запрещает вывод сообщений, если в файлах не обнаружено шаблонов. -V Распечатывает версию ident. Команда ident помимо текстовых работает с объектными файлами и дампами. Она находит все образцы типа Skeyword.text $, даже если ключевое слово keyword не поддерживается в RCS, а также выводит информацию по всем нестандартным ключевым словам. Ниже приведен список ключевых слов, в настоящее время поддерживаемых со. Время по умолчанию задается в формате UTC (иногда называемом GMT), но если файлы выбираются с помощью'опции -zzone, применяется числовая индексация часового пояса. ЮЧ - : . ■ • : . SAutorS имя пользователя, регистрирующего версию SDateS дата и время регистрации версии SHeaderS стандартный заголовок, содержащий полный маршрут к RCS-файлу, номер версии, дату и время, автора, состояние и индикатор блокирования (кто произвел блокировку) $Id$ то же, что и $HeaderS, но используется базовое имя RCS-файла (без маршрута) SLockerS имя зарегистрировавшегося пользователя, осуществившего блокирование версии; это ключевое слово может быть пустым, если версия не блокировалась SLogS сообщение, заполняемое во время регистрации; для целей, преследуемых ident, эквивалентно SRCSfileS SNameS символическое имя, используемое для записи версии, если таковое задано SRCSfileS собственно базовое имя RCS-файла без маршрута SRevisionS назначенный для проверки номер версии SSourceS полный маршрут к RCS-файлу
II. Команды 323 SStateS анализируемое состояние, назначенное с помощью опции -s команды res или ci Следующие управляющие последовательности можно встретить в значениях ключевых слов: символ табуляции \t символ новой строки \п пробел \040 S \044 \ \\ identify -.. .=. Р. еристики и «о»мат изображений. Синтак identify [options...] file [file...] Команда identify также информирует о неполном нли поврежденном файле с изображением. Опци -cache threshold Подстраивает пороговое значение памяти (мегабайты), доступное видеокэшу. -format string Выводит характеристики изображения в выбранном вами формате, где string принимает такие значения: %Ь размер файла %d каталог %е расширение имени файла %f имя файла %п высота %1 входное имя файла %1 метка %ш тип файла %п число сцен %о выходное имя файла %р номер страницы %q квантовая глубина %s номер сцены %1 вершина (верхний уровень) имени файла %и уникальное имя временного файла %w ширина %х разрешение вдоль оси х %у разрешение вдоль оси у
324 II Команды \п новая строка \г возврат каретки -ping Эффективно определяет характеристики изображения. -size wUlthxheight+offset Указывает ширину и высоту низкоуровневых изображений (GRAY, RGB или CMYK) и позволяет с помощью смещения offset пропустить любую информацию из заголовка изображения или сообщить количество цветов в таблице отображения. Для фото-образов CD можно выбирать из таких размеров: 384x256 768x512 1536x1024 3072x2048 И. наконец, с помощью этой опции можно указать уровень специфического разрешения изображения формата JBIG или JPEG. -verbose Печатает подробную информацию об изображении: имя и класс изображения, общее количество уникальных цветов, размер, формат и т.п. П име* $ identify sancha.xpm figOl-png sancha.xpm 24x24 DirectClass 834Ь ХРИ -O.Ou 0:00 fig01.png[l] 640x480 PseudoClass 88c 27kb PNG 0.4u 0:01 $ ifconfig - кон«и »и« ет сетевой инте««еис. Синтаксис ifconfig [interface] ifconfig interface [aftype] options\address Программа ifconfig используется для конфигурирования резидентных сетевых интерфейсов. Она применяется во время загрузки для установки необходимых интерфейсов, а позже обычно нужна для отладки. Если в командной строке не указаны никакие аргументы, отображает состояние текущих активных сетевых интерфейсов. Если определен единственный аргумент interface, информирует лишь о состоянии этого интерфейса. Если указан единственный аргумент -а, отображает статус всех интерфейсов. В противном случае конфигурирует интерфейс. Если первый аргумент, идущий после имени интерфейса, распознается в качестве одного из имен поддерживаемого семейства адресов, то он используется для декодирования и отображения всех адресов протоколов. В настоящее время допустимы сче- дующис значения аргумента aftype:
II. Команды 325 inet TCP/IP (по умолчанию) inet6 IPv6 ах25 сеть пакетного радио АХ.25 ddp Appletalk Phase 2 ipx Novell IPX netrom см. ax25. В качестве значения аргумента interface обычно используется имя драйвера, за которым следует собственно номер устройства (cthO - для первого устройства Ethernet- интерфейса). Аргумент address устанавливает IP-адрес интерфейса. Опции up Активизирует интерфейс. Для установки этого флага достаточно назначить адрес интерфейса. down Закрывает интерфейс. [-]агр Включает или отключает на этом интерфейсе использование протокола ARP, определяющего адрес Ethernet, соответствующий данному IP-адресу. [-]promisc Включает или отключает для этого интерфейса режим promiscuous. определяющий получение всех пакетов сети. [-Jallmulti Включает или отключает для этого интерфейса режим all-multicast. определяющий получение всех групп пакетов сети, а не только адресованных данному интерфейсу. metric N Устанавливает метрику интерфейса в значение //("цена" отправки пакета по интерфейсу). mtu N Устанавливает для интерфейса MTU (Maximum Transfer Unit - максимальный передаваемый блок). netmask addr Устанавливает для этого IP-интерфейса сетевую маску. По умолчанию ее значение определяется как обычная сетевая маска для сетей класса А, В или С на основании IP-адреса. add addrlprefixlen Добавляет для интерфейса адрес в соответствии с протоколом IPv6 (расширенный адрес). del addrlprefixlen Удаляет адрес интерфейса на основе IPv6. tunnel aa.bb.cc.dd Создает новое устройство-туннель (IPv6-in-IPv4) для заданного дистанционного узла. irq addr Устанавливает канал прерывания, используемый устройством, хотя не все устройства могут динамически менять спои IRQ-устаноикн. io addr addr Устанавливает для устройства базовый адрес ввода/иывоча.
326 II Команды mcmstart addr Устанавливает начальный адрес разделяемой памяти, исполыуемои устройством, хотя немногие устройства нуждаются в этом. media type Устанавливает физический порт или тип носителя, используемый устройством. Не все устройства могут менять эту установку. Ниже приведены допустимые значения параметра type: 10base2 тонкий Ethernet lObaseT Ethernet на витой паре, скорость передачи информации 10Mbps (10 Мбит/сек) AUI внешний трансивер auto предлагает драйверу выполнить автоматическое определение носителя, что доступно далеко не каждому драйверу. [-Jbroadcast [addr] Если задан addr, устанавливает широковещательный адрес для протокола этого интерфейса. В противном случае устанавливает (или очищает) для этого интерфейса флаг IFFBROADCAST. [-]pointopoint [addr] Устанавливает для интерфейса режим point-to-point (точка-точка): прямая связь между двумя машинами и больше никто не прослушивает ее. Значение addr, если задано, указывает адрес машины с другой стороны. В противном случае устанавливает или очищает для интерфейса флаг IFF_POINTOPO!NT. hw class address Устанавливает аппаратный адрес интерфейса, если подобная операция поддерживается драйвером устройства. За ключевым словом hw должны следовать имя класса устройства и его адрес в виде распечатываемых символов ASCII. Поддерживаются следующие классы устройств: ether Ethernet ах25 AMPR AX.25 ARCnet netrom AMPR NET/ROM multicast Устанавливает для интерфейса флаг multicast (групповой), что обычно не требуется, так как сами драйверы способны выполнить корректную установку. txqueuelen length Устанавливает размер очереди устройства; для более медленных > ст- ройств выбираются значения поменьше. Пример Команда ifconfig применяется для проверки подключения: # ifconfig ethO Link encap:Ethernet HWaddr 01:75:9C:7E:45:20 inet addr:192.197.5.200 Beast:192.197.5.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:2000 Metric:!
II. Команды 327 RX packets:4217 errors:0 dropped:0 overruns:0 frame:0 TX packets:2217 errors:0 dropped:0 overruns:0 carrierrO collisions:» txqueuelen:100 Interrupts Base address:0x220 10 Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 DP LOOPBACK RUNNING HTD:2500 Hetric:l RX packets:25 errors:0 dropped:0 overruns:!) frame:0 TX packets:50 errors:0 dropped:0 overruns:0 carrier:0 pppO Link encap:Point-to-Point Protocol inet addr:209.106.26.118 P-t-P:209.106.26.100 Mask:255.255.255.255 ПР POINTOPOINT RDNNING NOARP MOLTICAST HTD:1200 Hetric:l RX packets:112 errors:2 dropped:0 overruns:0 frame:2 TX packets:127 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txgueuelen:6 t imake - интерфейс препроцессора С к утилите make. Синтаксис imake [-Ddefine] [-Idir] [-Udefine]]l-Ttemplate] [-f filename] [-C filename] [s filename] [-e] [-V] Программа imake применяется для создания Makefiles (см. make) по заданному образцу: набору макроопределений препроцессора и входному файлу, называемому Imakefile (по одному на каталог). Это позволяет при хранении различных элементов, используемых для построения, держать отдельно машинно-зависимые компоненты: опции компилятора, альтернативные имена команд и специальные правила make. Опции -Ddefine Устанавливает переменные окружения, описывающие каталоги, передается непосредственно срр. Например, X Window использует эту опцию для установки значения TOPDIR в имя каталога, содержащего дерево дистрибутива, и CURDIR - в имя текущего каталога относительно вершины. Idir Задает каталог dir, в котором могут находиться образец для imake и файлы конфигурации; передается непосредственно срр. -XJdefine Снимает установки переменных при отладке файлов конфигурации imake; передается непосредственно срр. -Т template Указывает имя главного файла с образцом для imake, который обычно располагается в каталоге, определяемом опцией -I. По умолчанию принят файл Imakc.tmpl. -f filename Указывает имя входного файла, одного на каждый каталог. По умолчанию принято имя Imakefile. -С filename Указывает имя файла с расширением .с, который создастся в текущем каталоге. По умолчанию - Imakcfilc.c.
328 II. Команды -s jilename Указывает имя файла с правилами для make. Ьсли вместо имени стоит дефис, записывает содержимое файла на стандартный вывод. По умолчанию создается, но не исполняется файл Makefile. -е Опция предполагает, что imakc исполнит созданный Makefile. По умолчанию решение принимает пользователь. -v Выводит командную строку, передаваемую срр для генерации Makefile. Программа imakc вызывает срр либо с флагом -I, либо -D, передавая имя файла, содержащего три следующие строки: tdefine IMAKE_TEMPLATE "Imake.tmpl" • define INCLDDE_ IMAKEFIXE «makefile > Jdefine IMAKETEMPLATE Следует напомнить, что Imake.tmpl и [makefile могут быть перекрыты соответственно опциями -Т и -f. Файлы конфигурации imakc содержат переменные двух типов: собственно переменные imake и переменные make. После запуска imake ее переменные интерпретируются срр, переменные make записываются в Makefile для последующей интерпретации программой make. import - выполняет захват изображений экранов Х-сервера. Синтаксис import [options —J file Команда import считывает изображение с любого видимого окна Х-сервера и помещает его в указанный файл. Можно выполнить захват единственного окна, всего экрана или любой прямоугольной области на экране. Целевое окно может быть указано по идентификатору, имени или может быть выбрано с помощью указателя мыши. Щелкните указателем мыши в требуемом окне, если вы нажмете кнопку и начнете выполнять перетаскивание, формируемый прямоугольник будет расширяться. Стоит освободить кнопку - и часть экрана, окаймленная прямоугольником, будет сохранена в файле. В начале захвата звонок клавиатуры прозвучит один раз, а в конце -дважды. Опции -bordercolor color Указывает цвет рамки. -cache threshold Подстраивает пороговое значение памяти (мегабайты), доступное видеокэшу. Пока не будет задействовано 80 Мбайт памяти, пикселы изображения хранятся в памяти. Последующие операции с пикселами переносятся на диск. Если ваш компьютер не имеет достаточного количества оперативной памяти, вы, возможно, захотите подстроить »то значение.
II. Команды 329 -colors value Задает предполагаемое количество цветов для изображения (опция ограничения числа цветов). Опции -dither, -colorspace затрагивают алгоритм ограничения числа цветов. -colorspace type Устанавливает альтернативный тип цветового заполнения. На выбор предоставляются следующие типы: GRAY, OHTA, RGB, Transparent, XYZ, YCbCr, YIQ, YPbPr, YUV или CMYK. По умолчанию ограничение цветности имеет место в цветовом заполнении RGB. Эта опция требует опцию -colors или опцию -monochrome. -comment string Назначает для изображения указанную строку комментария. -crop widthxheight{+-}xjoffset{+-}y_offset{%} Устанавливает предпочтительный размер и расположение усеченного изображения, используя геометрическую спецификацию (см. X). Вы можете указать ширину или высоту в процентах, добавив %. -debug Разрешает вывод отладочной информации. -delay value Выводит после паузы следующее изображение. Аргумент value - это число сотых долей (1/100) секунды. Максимальная задержка достигает 65535. -density widthxheight Задает горизонтальное и вертикальное разрешение в пикселах. Эта опция указывает разрешение изображения, когда выполняется дешифрирование страницы PostScript или переносимого документа. По умолчанию принято значение, составляющее 72 точки на дюйм в горизонтальном и вертикальном направлениях. Эта опция должна согласоваться с опцией -page. -depth value Задает количество битов (8 или 16) в цветном образце в пределах пиксела. Эта опция применяется для низкоуровневых изображений, глубина цветности которых неизвестна, а именно: для GRAY (изображения в градациях серого), RGB или CMYK. -descend Достигает изображения, спускаясь по иерархии окон. -display host:display[.screeri\ Указывает Х-сервер для контакта (см. X). -dispose method Определяет метод диспозиции (расположения) для GIF-формата: 0 расположение не указано 1 не располагает между кадрами 2 перекрывает кадр фоновым цветом из заголовка 3 перекрывает предшествующим кадром -dither Использует диффузию (рассеивание) ошибки по Флойлу/Штейнрергу (Floyd/Steinberg), улучшающую изображения, которые (гггм'ллки or сжатия палитры. Эта опция требует опцию -colors или -monochrome.
330 II Команды Базовая стратегия рассеивания состоит в том, чтобы создать пространственное разрешение путем усреднения интенсивностей нескольких соседних пикселов. -encoding type Указывает шифрование (кодирование) шрифта. Выбор производится из AdobeCustom, AdobeExpert, AdobeStandard, AppleRoman, BIGS, GB2312, Latin 2, None, SJIScode, Symbol, Unicode, Wansung. -endian type Задает окончания (MSB или LSB, см. приложение VI) в выводимом изображении. -frame Включает кадр с окном X в импортируемое изображение. -geometry widthxheight{+-}x_offset{+-}y_offset{%] {@} {!}{<} {>} Устанавливает предпочтительный размер и расположение окна изображения. По умолчанию во время изменения размера пытается сохранять формат изображения (соотношение ширины и высоты). Чтобы вынудить изображение принять некий определенный размер, добавьте в конце восклицательный знак. Вы можете указать процент ширины (или высоты), добавив %, и изменить размеры с помощью о. Символ > меняет размер изображения только в том случае, если его ширина или высота превышает геометрическую спецификацию. Символ < меняет размер изображения только в том случае, если его ширина и высота меньше, чем геометрическая спецификация. Символ @ указывает максимальную область изображения в пикселах. interlace type Указывает тип чередования (поочередного сканирования линий) для низкоуровневых форматов изображений (RGB или YUV): None (RGBRGBRGBRGBRGBRGB...) по умолчанию Line (RRR...GGG...BBB...RRR...GGG...BBB...) Plane (RRRRRR.. .GGGGGG.. .ВВВВВВ...) Partition как Plane, но разные битовые плоскости (матрицы, образованные совокупностью одноименных битов всех пикселов) сохраняются в разных файлах: image.R, image.G, image.B -label name Назначает изображению указанную метку. -monochrome Трансформирует данное изображение в монохромное (черный и белый цвета). -negate Замещает каждый цвет его дополнительным, или аддитивным, цветом. Для любого цвета имеется противоположный цвет, от смешения с которым может получиться белый. Белый цвет станет черным, желтый — голубым и т.д. -page widthxheight{+-}x_offset{+-}y_offset{%) {!}{<}{>} Устанавливает предпочтительный размер и расположение канвы изображения. Опция -page похожа на -geometry. -pause seconds Устанавливает паузу в секундах между моментальными копиями жрана.
II. Команды 331 -ping Эффективно определяет характеристики изображения. -pointsize value Указывает размер шрифта Postscript (в пунктах, вернее, в десятых долях типографского пункта: значение 80 обозначает, что размер шрифта равен 8 пунктам). -quality value Устанавливает уровень сжатия для изображений формата JPEG/MIFF/ PNG. Для форматов JPEG и MPEG значение value меняется от 0 (наивысшее сжатие) до 100 (наименее эффективное сжатие) при принятом по умолчанию 75. Используйте опцию -sampling_factor, чтобы указать коэффициенты цветности (цветоразностных сигналов) загружаемых сэмплов (образцов). -resize <width>x<height>{%} {@} {!}{<}{>} Это псевдоним опции -geometry, действующий таким же образом. -rotate degrees{<}{>] Вращает изображение по методу Паеса (Paeth). Символ > вращает изображение только в том случае, если его ширина превышает высоту; символ < вращает изображение только в том случае, если его ширина меньше высоты. Если вы используете символы < и >, рекомендуется заключать их в двойные кавычки, например, так: -rotate "-45>". -samplingfactor horizontalJactorX.vertical_factor Указывает горизонтальный и вертикальный коэффициенты сэмплирования, эти коэффициенты используются кодировщиками JPEG, MPEG-2 и YUV для определения цветности (цветоразностного сигнала) при загрузке образцов. -scene value Устанавливает номер сцены изображения или первое изображение в последовательности изображений. -screen Указывает экран для захвата. Вы можете получить части других окон, что перекрывают указанное окно, и, что более важно, захватить меню и другие всплывающие независимые окна, которые появляются поверх указанного окна. -silent Действует без выдачи сообщений. -snaps value Указывает количество моментальных снимков экрана. Эта опция позволяет захватить более одного изображения экрана сервера X и создать анимационную последовательность. -transparent color Внутри изображения делает данный цвет прозрачным. -trim Выполняет подгонку краев изображения, удаляя любые края, имеющие тот же самый цвет, что и угловые пикселы. -verbose Печатает детальную информацию о данном изображении: номер сиены в сценарии, имя и размер изображения, общее количество уникальных цветов, класс или пссвдокласс изображения, количество секунд, необходимое, чтобы прочесть и трансформировать данное изображение.
332 II Команды -window id Выполняет изображение фона, задаваемого по имени или идентификатору окна. Для id задайте значение root, если в качестве целевого хотите указать корневое окно X. Пример Создадим последовательность моментальных снимков экрана без использования мыши и поместим их в файл result.gif. S import -window root -pause 5 -snaps 3 result.gif & [10] 3237 [10] Done import -window root -pause 5 -snaps 3 result.gif $ А теперь проверим, что из себя представляет файл result.gif: $ identify result.gif result.gif[0] GIF 640x480+0+0 PseudoClass 256c 8-bit 1022kb 1.3u 0:02 result.gif[1] GIF 640x480+0+0 PseudoClass 256c 8-bit 1022kb 0.9u 0:02 result.gif[2] GIF 640x480+0+0 PseudoClass 256c 8-bit 1022kb 0.4u 0:01 $ В состав файла result.gif вошли три изображения. inetd - суперсервер, предназначенный для запуска служб Internet. Синтаксис inetd [[-di][-q queuelength][configuration-file] Запускается во время загрузки через /etc/rc.local. Если ваша init может порождать произвольных демонов, суперсервер inetd может быть запущен от нее, а также перезапущен, если это потребуется. Будучи запущенный, inetd прослушивает подключения по ряду сокетов (программ, обслуживающих соответствующие подключения) Internet. Когда в одном из этих сокетов обнаруживается произведенное подключение, inetd начинает устанавливать, какая требуется служба, и вызывает соответствующую программу. После завершения программы обычно продолжает прослушивать возможные подключения. Опции -d Включает несколько видов отладки. Подразумевает опцию -i. -i He работает в фоновом режиме; для запуска от init. -q queuelength Устанавливает размер очереди сокета в указанное значение. По \ молчанию принято 128. Перед выполнением суперсервер inetd считывает информацию со своего конфигурационного файла, который можно задать с помощью аргумента configuration-file. По умолчанию в качестве такового принят /ctc/inctd.conf. В конфигурационном файле можно встретить ряд полей:
II. Команды 333 service name название проверяемой службы, как оно определено в файле /etc/services socket type тип сокета, определяемый одним из следующих значений: stream потоковый dgram дейтаграмма raw низкоуровневый тип rdm надежно доставляющий seqpacket работающий с последовательными пакетами protocol протокол, определенный в файле /etc/protocols; принимает значение tcp или udp wait/nowait[.mo.x:] применяется только с сокетами дейтаграмм, для всех остальных соке- тов указывается novvait; необязательный суффикс max определяет максимальное число образцов сервера, порождаемых inetd за интервал в 60 секунд; если суффикс max опущен, по умолчанию принимается значение 40 user[.group] имя пользователя, который может запустить сервер; можно также указать необязательное имя группы server_program маршрут к программе, запускаемой inctd по запросу server_program arguments обычные аргументы, начинающиеся с a/gv[0], который является именем программы. Получив сигнал SIGHUP (см. приложение I), inetd перечитывает свой конфигурационный файл. Пример Вот как выглядит стандартная строка из файла /etc/inetd.conf для службы ftp: ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -1 -a inGWS - направляет статью локальному серверу новостей Usenet i я послед ющего распространения. Синтаксис inews I-h][-D][-0][-R][-S]\header_flags\ [input] Считывает статью новостей Usenet (возможно с заголовками) с указанного файла input или стандартного ввода, если файл не задан, добавляет некоторые заголовки и тестирует ее на соответствие стандартам Usenet. Если статья по какой-либо причине не проходит проверку, она будет отвергнута. В противном случае inews посылает ее на локальный сервер новостей, описанный в файле inn.cnnf, для дальнейшего распространения.
334 II Команды ,Опции -h В стандартном случае ввод содержит заголовки статьи, пустую строку и собственно тело сообщения. Этот флаг должен использоваться для совместимости с более старыми версиями программы, ио может быть опущен лишь в том случае, когда сообщение не содержит заголовков. -О По умолчанию в сообщении будет присутствовать заголовок Organization (организация); чтобы отказаться от этого заголовка, используется флаг-О. -D Устанавливает режим отладки, выполняет необходимые проверки, а затем направляет статью вместо сервера на стандартный вывод. -А, -V, -W Для совместимости с программой С News принимает, но игнорирует флаги -А, -V, -W. -N Трактует флаг -N программы С News как флаг -D. -S Обычно inews пытается добавить файл .signature (файл электронной подписи), если он существует в исходном каталоге пользователя, в конец статьи. Если этот файл не может быть считан или он чересчур длинный - более четырех строк или более одного стандартного буфера ввода/вывода - или возникают другие проблемы, статья не будет опубликована. Чтобы подавить это, применяется флаг -S. -R Отвергает любые попытки опубликовать управляющие сообщения. header_flags В командной строке можно указать различные заголовки сообщений с помощью так называемых флагов заголовков. Каждый из этих флагов различает единственный, идущий за ним параметр. Если его значение представляет более одного слова, то их следует заключить в кавычки. Ниже приведен список опций (флагов) и соответствующих им заголовков: a Approved (одобренное) с Control (управляющее) d Distribution (для распространения) е Expires (с истекшим сроком) f From (от кого) w Followup-To (следует к) n Newsgroups (группы новостей) г Reply-To (кому следует направить ответ) t Subject (тема статьи) F References (ссылки) о Organization (организация) х Path prefix (префикс маршрута) Программа inews завершается с нулевым кодом, если статья успешно опубликована или отправлена, и завершается с ненулевым кодом - если статья не может быть доставлена. Если inews приходится накапливать свой ввод из-за недоступности сервера новостей, необходимо с помощью сгоп регулярно запускать mews с флагом -U.
II. Команды 335 П'име- $ inews -t "my wishes"-n macrobiotic articlemy Warning Can't connect to server -Article will be spooled. $ Сделана попытка отправить статью из файла articlemy на сервер новостей. Предупреждающее сообщение свидетельствует о невозможности подключиться к серверу. Статья не пропадет; в подобных случаях все статьи накапливаются и будут отправлены при установке подключения. 1ПТО ~ считывает документацию в гипертекстовом формате GNU texinfo на заданную тему или об указанной команде. Синтаксис info [option]...[menu-item...] Если запустить info, не указав команду, будет представлен начальный экран info, содержащий краткую инструкцию по перемещению между темами. Опции —apropos=subject Просматривает указанную тему subject во всех индексах всех руководств. —directory=rfjr Добавляет указанный каталог dir к маршруту info (переменная INFOPATH). —dribble=filename Запоминает последовательность нажимаемых пользователем клавиш в файле filename. —f\\e-filename Использует информацию заданного файла. —help Выводит краткое описание опций и завершает программу. —inuex-search=string Переходит к разделу, указанному по индексу string. —tioue-nodename Указывает узел, с которого следует начинать. —output= filename Выводит выбранные разделы в файл filename. —restore= filename Считывает последовательность нажимаемых клавиш из файла filename —show-options, —usage Направляется к разделу опций командной строки.
336 II Команды —subnodcs Рекурсивно выводит подтемы (подразделы). —vi-keys Использует привязки клавиш, как для vi и less. —version Выводит информацию о версии программы и завершает ее. Пример Требуется просмотреть во всех разделах тему forwarding (переназначение, перепоручение): $ info —apropos=forwarding "(gcc)Constructing Calls" — forwarding calls "(emacs)Rmail Reply" — forwarding a message "(mh-e)Forwarding" — forwarding <1> "(mh-e)Customizing Forwarding" — forwarding $ IП1Т - инициализирует управлен - проце . 1\ init [-a][-s][-b]I-z xxx][0123456SS] /sbin/telinit [-t sec][0123456sSQqabcUu] init - это родитель всех процессов. Его основное предназначение - создание процессов по сценариям, хранящимся в файле /etc/inittab. Программа init может находиться в одном из восьми уровней исполнения: 0-6 и S, или s. Уровни 0, 1 и 6 являются зарезервированными. Уровень 0 используется, чтобы остановить систему, уровень 6 - чтобы перезагрузить, и уровень I используется, чтобы перевести систему в однопользовательский режим. Уровень S никогда не используется напрямую, а все больше для сценариев, выполняющихся при переходе на уровень 1. init вызывается ядром в качестве последнего шага в последовательности загрузки. При этом ядро просматривает файл /efc/inittab в поисках элемента initdefault, определяющего начальный уровень запуска для системы. Если упомянутый элемент или даже файл /etc/inittab отсутствует, уровень запуска может быть введен с системной консоли. Уровень S, или s, переводит систему в однопользовательский режим, при этом /etc/inittab даже не требуется. При запуске нового процесса init проверяет, существует ли файл /etc/initscript. И если такой файл существует, использует его для запуска процесса. Каждый раз при завершении родительского процесса init отмечает сам факт и причину "смерти" в файлах /var/run/utmp и /var/log/wtmp. telinit привязана к init. Она принимает односимвольный аргумент и сигналы для выполнения соответствующего действия. init принимает от LILO (загрузчика)следующие флаги: Принимаемые флаги -s, S, single Переходит в однопользовательский режим. 0-6 Указывает уровень запуска.
II. Команды 337 -b, emergency Сразу переходит в оболочку однопользовательского режима, не ianyc- кая никаких сценариев. -a, auto Загрузчик LILO может добавлять командную строку, которая по умолчанию выполняется в процессе загрузки. Если это будет обнаружено, ■nit создает возможность пользователю указать командную строку вручную. Q, q Вновь исследует файл /etc/inittab. U, u Перезапускает себя, но не исследует вновь файл /etc/inittab. -t sec Заставляет telinit информировать init, как долго он ожидает (по умолчанию 5 секунд) между отправками процессам сигналов SIGTERM и SIGKILL. -z ххх Собственно игнорирует сам параметр ххх, идущий за флагом -z. Этот прием позволяет слегка расширить командную строку. В дальнейшем init может манипулировать командной строкой, отображая текущий уровень исполнения. innd демон InterNetNews. Синтаксис innd [-a][-c days] I-C][-d][-f][-H count] [-i count] l-HP-address][-l size] [-L] [-m mode] [-n flag][-o count] [-pfd_desc] [-Vport] [-r][-s] [-t timeout]l-i: count]]-u] [-X seconds]l-Z] innd - демон InterNetNews - поддерживает все входящие подпитки NNTP. Он считывает в память файлы active, newsfeeds и incoming.conf, а затем открывает порт NNTP для получения статей от дистанционных сайтов. Если был определен <HAVE UNIX DOMAIN SOCKETS in include/config.h>, то для получения статей от локальных процессов, таких, как nnrpd и rnews, применяются потоковый сокет Unix-доменов и со- кет дейтаграмм, используемый ctlinnd. В противном случае вместо упомянутых соке- тов используются именованные каналы. Для непосредственного обращения к серверу и выполнения ряда действий применяется ctlinnd, при этом открывается БД history и два журнала для замещения стандартных файлов вывода и ошибок. После того как файлы и сокеты были открыты, hind ждет на своих портах подключений и данных, используя системный вызов select (синхронное мультиплексирование ввода/вывода) и неблочный ввод/вывод. Если информация недоступна, то очищает свои структуры данных. Количество секунд тайм-аута перед очисткой устанавливается как <DEFAULT_TIMEOUT in config.data>. Обычно задается 300 секунд. Опции -а По умолчанию, если в файле incoming.conf не встречается никаких \ поминаний об узле, пытающемся подсоединиться, подключение m-peia- стся nnrpd. В случае задания флага -а любой yjeji может подключиться и передавать статьи.
338 II Команды -с davs Отвергает старые статьи. Срок в днях задает параметр days По умолчанию принято 14 дней, хотя опция artcutoff в файле inn.conf может поменять это значение. F-сли установлено значение -сО, никакие проверки сроков производиться не будут. -С Принимает и распространяет, но ни в коем разе не уничтожает и не вытесняет сообщения. -d, -f Обычно демон innd переводит сам себя в фоновый режим, направляет стандартный вывод и ошибки в журналы (log files), открепляет себя от терминала. Применяемый флаг -d инструктирует сервер не делать этого, в то же время использование флага -f оставляет сервер в фоновом режиме. -X seconds Устанавливает количество секунд seconds, используемое флагами -Н и -Т. По умолчанию определено нулевое значение, означающее отключение проверки. -Н сойм Определяет количество подключений к серверу, которое разрешено выполнить узлу за период, задаваемый флагом -X. По умолчанию определено значение 2. -Т count Определяет общее количество входящих подключений к innd за период, задаваемый флагом -X. По умолчанию принято значение, равное 60, максимальное значение - 128. -i count Ограничивает количество входящих NNTP-подключений значением count. Нулевое значение count запрещает эту проверку. По умолчанию принято значение, равное 50, хотя опция maxconnections из файла inn.conf может поменять это значение. -UP-address Позволяет связать innd с указанным адресом IP-address интерфейса. Для задания адреса определена десятичная нотация. -1 size Ограничивает размер статьи значением size. Любая статья размером больше заданного просто отвергается. Нулевое значение параметра sire отключает проверку. По умолчанию принят размер в 1000000 байт. -L Не создает связи (ссылки) для переправляемых статей. -m mode Запускает сервер в заданном с помощью параметра mode режиме. В зависимости от значения mode эмулируются следующие команды: g go - обычный запуск р pause - приостановка t throttle - сворачивание -n flag Если параметр flag установлен в значение у, то разрешает читателям действовать через сервер; если flag установлен в значение п (по > молчанию), разрешает чтение новостей даже когда сервер не зап>щсн. Хотя значение flag может быть изменено с помощью опции readerswhenstopped из файла inn.conf. -о count Ограничивает значением count количество открытых файлов, ире (назначенных для исходящих подпиток. По умолчанию принято значение.
II. Команды 339 равное количеству допустимых дескрипторов, ia вычетом некоторого количества, зарезервированного для внутреннего использования. -pfddesc Открывает порт NNTP для указанного дескриптора fddesc. -Pporl Использует порт port для прослушивания подключений. -г Сервер перенумерует файл active так, как если бы была послана команда renumber. -s При задании этого флага innd лишь проверяет синтаксис файла newsfeeds, не выполняя ничего более. Найденные ошибки фиксируются в журнале (syslog). -t timeout Меняет период тайм-аута, задаваемого параметром timeout, при освобождении содержимого буферов. -и Обработка журналов обычно ведется с буферизацией. В противном случае требуется установить флаг -и. -Z Отключает потоковый ввод (mode stream) и отвергает другие потоковые команды. Поступающие статьи, которые имеют управляющий заголовок (Control header) или заголовок темы (Subject header), начинающийся с пяти символов cmsg (последний всегда пробел), называются управляющими сообщениями. Когда поступает управляющее сообщение, первое слово текста конвертируется в символы нижнего регистра (кроме cancel) и используется в качестве имени программы для исполнения. Если указанной программы не существует, тогда исполняется заданная по умолчанию программа <pathcontrol in inn.conf>/default. Все управляющие программы вызываются с четырьмя параметрами. Первый из которых - адрес человека, отправившего сообщение по почте. Второй параметр - адрес обратного ответа, который берется из заголовка Reply-To, если этот заголовок пустой, используется почтовый адрес. Третий параметр — имя файла, в котором находится статья, по маршруту относительно спул-каталога новостей. Четвертый параметр -узел, приславший статью. Управляющие сообщения обычно поступают от групп новостей под именем control, хотя в этом имени может быть также отражена и подгруппа. innd использует команды NNTP, определенные в RFC 977. Хотя имеются и некоторые различия. Появились две новые команды: так одна из них - mode reader - приказывает серверу передать подключение nnrpd; сегодня команда mode query - это синоним mode reader, а вообще она заложена для будущего расширения. Имеются команды, поддерживающие потоковую передачу - check messageid и takethis messageid. Существует пакетная команда xbatch byte-count, которая считывает количество байт, задаваемое параметром byte-count, и хранит их до последующей обработки программой rnews, которая может стартовать отдельно. Пример Сообщение finegroup будет находиться в файле control.fincgroup. если существует группа finegroup. В противном случае оно попадет в файл control.
340 li Команды innd фиксирует все поступившие статьи в журнале, который представляет т себя текстовый файл с переменным количеством полей, разделенных пробелами, в одном из следующих форматов: sat 01 02:15:06.000 с feed <Message-ID> site... sat 01 02:46:08.010 + feed <Message-ID> site sat 01 05:48:09.000 j feed <Hessage-ID> site... sat 01 08:55:22.008 - feed <Message-ID> reason... Первые три поля содержат дату и время. Пятое поле - это сайт, который отправил статью. В шестом поле содержится ID сообщения с упомянутой статьей. После этого поля может находиться имя узла и размер поля в зависимости от того, указана ли в файле inn.conf опция nntplinklog и logsi/e. Четвертое поле указывает статус статьи: + статья будет принята с сообщение cancel (уничтожить) будет принято до прибытия оригинальной статьи j статья попадает в группу новостей junk (бесполезные) - статья отвергнута Поле reason включает причину, по которой была отвергнута статья: заголовок чересчур длинный, дубликат, отсутствие символа двоеточия в заголовке, нежелательная группа новостей и т.д., и т.п. inndstart - упрощенный аналог innd. Синтаксис inndstart [flags] Программа inndstart - небольшой внешний интерфейс, что открывает порт NNTP. устанавливает USERID (идентификатор пользователя) и GROUPID (идентификатор группы) в соответствии с параметрами администратора службы новостей и затем исполняет innd с флагом -рис минимальным соблюдением правил безопасности. Такая программа очень удобна, если сайт не желает запускать innd с привилегиями суперпользователя. innfeed - осуществляет передачу новостей между компьютерами на протоколе NNTP. Синтаксис innfeed [-a spool-dir]l-b directory][-С][-с filename][-d лиш][-е bytes] [-h][-l filename][-m][-p file][-s file]1-х)[-y|[-z][-v]|fiie] Поддерживает как стандартный протокол IHAVK, так и потоковое расширение CHFCK/TAKETHIS.
II. Команды 341 Протокол 1HAVE/SENDME (я имею/перешли мне) позволяет избежать пересылки дублирующихся новостей. Вместо того чтобы пересылать на дистанционный узел содержимое всех статей, локальная система пересылает только их идентификаторы (IHAVE -я имею). Дистанционный узел принимает такое сообщение и с помощью файла history возвращает на отправившую систему сообщение SENDME (перешли мне). В этом сообщении дистанционный узел просит переслать лишь те статьи, которые им еще не обрабатывались. innfeed может одновременно подпитывать новостями любое число дистанционных узлов и будет открывать несколько подключений к каждому сетевому узлу, если это сконфигурировано. Ограничения существуют лишь на количество дескрипторов открытых файлов и память. innfeed присущи три режима обработки: channel (канальный), funnel-file (режим файла "дымохода", сбрасывающего "дым") и batch (пакетный). Первый из режимов используется, когда в командной строке не указано имя файла, в конфигурационном файле не задано ключевое слово input-file, а также не определена опция -х. В этом режиме innfeed запускается со стандартным входным файлом, подключенным через конвейер к innd. Когда бы демон innd ни закрыл конвейер, а у него могут возникнуть разные причины сделать это, innfeed завершается. При этом innfeed пытается завершить отправку всех статей, находящихся где-то на середине процесса пересылки, прежде чем выдать команду окончания работы. Второй режим применяется, если в качестве аргумента задано имя файла file или ключевое слово input-file определено в конфигурационном файле. В этом режиме innfeed считывает указанный файл с такой же отформатированной информацией, как innd поставляет для первого режима. Ожидается, что innd постоянно производит запись в упомянутый файл, так что по мере продвижения к концу этого файла innfeed периодически осуществляет проверку новых поступлений информации. Чтобы препятствовать безудержному росту размеров файла, пользователю необходимо позаботиться о периодическом "выбросе информации из файла на сторону", как выпускается дым из дымохода, и предоставить innd возможность освобождать файл от его содержимого. После этой процедуры пользователь сможет послать innfeed сигнал SIGALRM, и она, в свою очередь, сможет закрыть текущий и открыть новый файл, созданный innd. Если используется флаг -х, то применяется пакетный режим. В этом режиме innfeed попросту игнорирует стандартный ввод и обрабатывает любые записи регистрации в журнале (backlog), созданные ранее запускаемой копией innfeed. Чтобы innfeed корректно функционировала, необходимо выполнение двух условий: наличие каталога, в котором программа может хранить файлы backlog, и конфигурационного файла (описанного в innfeed.conf), где указываются поддерживаемые сетевые узлы, называемые foo. Для каждого foo программа innfeed поддерживает до 4-х файлов в каталоге журнала backlog: файл fooJock, препятствующий путанице других образцов файлов innfeed с текущим; файл foo.input, содержащий информацию о старой статье, который innfeed считывает для повторной обработки; файл fon.output, куда innfeed записывает информацию о статьях, которые не смогла обработать, и, наконец, собственно файл foo. Последний файл никогда не создастся innfeed, но если она обнаружит таковой, то тут же переименует его на будущее в foo.input и в дальнейшем начнет считывать именно этот файл. Что позволяет считывать пакетный файл и помещать п такое место, где innfeed
342 II Команды сможет легко его обнаружить. Пользователь никогда не должен непосредственно вносить изменения в файлы .input или .output запущенной программы innfeed Формат трех последних файлов выгляди г следующим образом: маршрут/к/статье <message-id> Это те самые два первых поля строк innd, которые демон передает innfeed. И в то же время это два первых поля строк пакетного файла, куда innd производит запись, если innfeed недоступна по каким-либо причинам. Программа innfeed записывает текущее состояние в файл innfeed.status, где содержатся детали обработки в целом и по каждому узлу, поддерживаемому этим образцом innfeed. Если innfeed получит указание направить статью компьютеру, который она не поддерживает, информация о статье будет занесена в файл, имя которого совпадает с шаблоном innfeed-dropped.* с частью имени файла, соответствующего идентификатору процесса innfeed. производящего запись именно в этот файл. Основные опции -a spool-dir Указывает каталог spool-dir (вернее верхний уровень каталогов) для накопления статей. С помощью chdir (изменение каталогов) программа innfeed переходит в этот каталог, манипулируя абсолютным маршрутом. По умолчанию используется <patharticles in inn.conf>. -b directory Указывает каталог для хранения файлов backlog. Если маршрут относительный, то он берется относительно <pathspool in inn.conf>. По умолчанию принят innfeed. -с filename Указывает конфигурационный файл, отличающийся от принятого по умолчанию. Если указан относительный маршрут, то он берется относительно <pathetc in inn.conf>. По умолчанию принято имя файла innfeed.conf. -С innfeed просто проверяет конфигурационный файл, выдает отчет о найденных ошибках и завершается. -d пит Указывает начальный уровень регистрации. Все отладочные сообщения направляются в стандартный файл ошибок. -е bytes Позволяет сформировать предельный размер в байтах на 10% больше, чем заданный размер; innfeed будет замещать выходной файл "хвостом" исходного (оригинальная версия). По умолчанию предел не устанавливается. -h -1 filename -m -pfile Печатает краткое описание опций. Указывает файл регистрации, отличающийся от стандартного файла ошибок. Включает процесс регистрации всех пропущенных статей. Указывает имя файла file для записи в него PID (идентификатора процесса innfeed). Маршрут берется относительно <pallmin in iim.eonf*\
II. Команды 343 -S file Указывает имя файла для периодической записи в него состояния Если определен относительный маршрут, то он берется относительно <pathlog in inn.confX По умолчанию принимается файл innfeed.statui -v Выводит информацию о версии программы и завершает ее. -х Сообщает innfeed, что не следует ожидать информацию о статьях от демона innd, вместо этого приказывает приступать к обработке любых существующих файлов backlog, а затем завершает ее работу. -у Позволяет выполнять динамическую увязку узлов. Если информация по статье, полученная от innd, содержит неизвестный узел, тогда помимо имени узла берется и IP-информация. -z Вынуждает создавать статистический отчет по каждому параллельно подпитываемому подключению. Программа innfeed реагирует на следующие сигналы: SIGALRM закрывает funnel-file, указываемый в командной строке, и затем вновь открывает его SIGINT записывает большой отладочный слепок (дамп) работающей системы SIGHUP перезагружает конфигурационный файл SIGCHLD закрывает и вновь открывает все файлы backlog SIGTERM осуществляет запланированное завершение работ SIGUSR1 увеличивает уровень отладки на единицу; обычно используются уровни отладки от 0 до 5, хотя начальный уровень отладки равен 0, если только не задана опция -d SIGUSR2 уменьшает уровень отладки на единицу Пример Существует три категории регистрируемых элементов статистики, первый из которых называется HOST. Для заданного узла через определенные интервалы создается статистика всех подключений. August 20 11:37:10 data innfeed[15016]:remie checkpoint seconds 1250 offered 2418 accepted 1137 refused 1025 rejected 211 missing 2 spooled 774 on_close 0 unspooled 113 deffered 12 requeued 18 queue 37.2/100:12,20,18,6,21,23 Значения полей листинга таковы: seconds время подключения innfeed к узлу remie offered количество команд IHAVE, посланных узлу не в потоковом режиме; количество команд TAKETHIS, посланных в режиме no-СНЕСК, плюс количество команд CHECK, посланных в потоковом режиме, когда не действовал режим по-СНЕСК accepted количество статей, отправленных на дистанционный компьютер и принятых им
344 И Команды refused количество статей, предназначенных узлу, который сообщил, что не желает их принимать, так как видел идентификаторы сообщений Message-ID rejected количество отвергнутых статей missing количество статей, которые innfeed предназначала данному сетевому узлу, но которых не оказалось по разным причинам в каталоге накопленных статей: возможно, они были уничтожены или истек срок их хранения spooled элементы статей, записанные в .output (файл backlog) потому, что не могли быть отправлены на дистанционный компьютер или приняты им onclose количество статей, накопленных после того, как innfeed закрыла все подключения к узлу unspooled количество элементов статей, считанных с .input (файл backlog) deffered статьи, отправку которых дистанционный узел попросил innfeed выполнить попозже; innfeed немедленно отправляет эти статьи в конец очереди requeued статьи, приготовленные к отправке, но так и не отправленные в связи с обрывом связи или по другим причинам queue первое число - средний размер очереди в течение предшествующего интервала регистрации второе число - максимально доступный размер очереди третье - процент от общего времени, определяющий время, когда очередь пустовала четвертое - процент от общего времени, когда очередь была наполнена не более, чем на 25% пятое — процент от общего времени, когда очередь была наполнена от 25% и до 50% шестое - процент от общего времени, когда очередь была наполнена от 50% и до 75% седьмое - процент от общего времени, когда очередь была наполнена от 75% и до 100% восьмое - процент от общего времени, когда очередь была полностью наполнена innstat печатает дамп системы INN. Синтакси innstat Программа innstat это сценарий, сообщающим об оперативном режиме сервера, заполнении дискового пространства, состоянии псех журналов и кч'к-ф.шпов.
II. Команды 345 innxmii - посылает статьи Usenet на дистанционный сервер NNTP. интаксис innxmit [-A aIt_spool][-a]|-c][-d][-l][-H]l-r][-s][-t timeout] [-Т timeout] l-p][-v][-p portnum] host file innxmit подключается к серверу NNTP в указанном сетевом узле host (проверяя себя через файл passwd.nntp, если это возможно) и посылает ему статьи, указанные в пакетном файле/j/e. Файл <pathetc in inn.conf>/passwd.nntp содержит пароли для подключения к дистанционным серверам NNTP. Обычно innxmit вызывается из сценария, запускаемого с помощью сгоп, при этом используется shlock, чтобы заблокировать узел, за которым следует команда ctlinnd, освобождающая пакетный файл. Если аргумент file не является абсолютным маршрутом, то он берется относительно каталога <pathoutgoing in inn.conf>. Обычно в сетях статьи накапливаются в течение некоторого периода времени, после чего они собираются в один файл, сжимаются и пересылаются на дистанционную систему. Такой метод называется batching (пакетная передача). Статьи пакетного файла file посылаются на дистанционный узел. Каждая строка пакетного файла может сохраняться в одном из следующих форматов: filename Message-ID * filename Поле filename именует посылаемую статью. Если в нем содержится не абсолютный маршрут, то он берется относительно спул-каталога новостей - <patharticles in inn.conf>. Если поле Message-ID не указано, то его содержимое будет добыто из статьи. Поля filename и Message-ID разделяются пробелом. В первом формате за полем Message-ID могут следовать дополнительные поля, например, размер статьи. И хотя innxmit игнорирует любое поле после Message-ID, но перезаписывает такие поля, коль требуется. Если возникает коммуникационная ошибка, скажем, ошибка записи, то innxmit приостановит отправку и перезапишет пакетный файл, содержащий текущую и другие неотправленные статьи. Опции -t timeout Указывает тайм-аут, определяющий попытки подключения. -Т timeout Указывает общее количество времени в секундах, предназначенное для пересылки статьи. -Р portnum Указывает номер порта рогчтт, другой, чем по умолчанию. -г Если дистанционный сервер посылает неожиданный код ответа, innxmit запрашивает статью и возобновляет процесс. Флаг -г препятств\ст этому. -v Перед завершением innxmit помещает в syslog отчет о пересылке и статистику зафиксированных ресурсов ЦП- Рели указан флаг-\, будет также производить распеча гку на стандартный вывоч.
346 II Комаццы -а Если все статьи успешно пересланы, innxmit удаляет пакетный фай-i, в противном случае он будет переписан и продолжает содержать список неотправленных статей. Если никакие статьи не были пересланы или были отвергнуты, файл остается неприкосновенным, что создает проблемы в связи с его непомерным ростом. Чтобы пакетный файл был в любом случае переписан, применяется флаг -а. -р Если задан флаг -р, не выполняет никакие подключения, и очищает пакетный файл от элементов, которые ссылаются на уже несуществующие файлы. Этот флаг предполагает также флаг -а. -d Направляет отладочную информацию в стандартный файл ошибок. -1 Отключает регистрацию причин, выдвигаемых дистанционным узлом, если он отвергает статьи. -М Заставляет innxmit просканировать заголовки статьи до ее отправки. Иногда необходимо отправить MIME-статью (не в 7-битном формате), формат отправляемой статьи будет изменен. -A altspool Указывает альтернативный спул-каталог altspool, используемый, если статья не найдена. Таковым может оказаться монтируемый спул-каталог NFS главного сервера с более длительным сроком хранения статьи. -s Во время подключения к серверу innxmit пытается установить расширение потокового режима протокола NNTP. Если все закончится благополучно, будет использоваться несколько отличающийся протокол, который увеличивает пропускную способность. Если сервер не может распознать потоковый режим, innxmit возвращается к обычному режиму передачи NNTP. Флаг -s препятствует установке расширения потокового режима. -с В потоковом режиме производится предварительная проверка ID каждого сообщения, чтобы избежать аналогичных действий на сервере. Если задан флаг -с, осуществляет пересылку статей без такой проверки. инсталлирует загружаемый модуль яд «а. insmod Синтаксис insmod [-fkmpqrsxXvyY ] [-Р prefix] [-o module_name] object file [Bymbol=value ] Программа insmod вставляет загружаемый модуль в работающее ядро, insmod старается скомпоновать модуль object Jlle с работающим ядром, разрешая все символы (идентификаторы) из экспортируемой таблицы символов ядра. Программа insmod осуществляет поиск модуля в некоторых общих каталогах, определенных ио > молчанию. Переменная окружения MODPATH перекрывает значения, принятые по умолчанию. Но если существует конфигурационный файл /etc/modulcs.conf. он перекрывает маршруты, определенные в MODPATH.
II. Команды 347 Опции -f Пытается загрузить модуль, даже если версия ядра, для которого он компилировался, не совпадает с текущей версией ядра -к Устанавливает для модуля флаг auto-clean (автоматической очистки), который используется какой-то период времени - обычно одну минуту. -гп Выводит карту загрузки, облегчающую отладку модуля в момент краха ядра. -о module name Устанавливает точное имя модуля вместо имени, унаследованного от базового имени объектного файла. -р Выполняет опробование модуля с целью удостовериться, что он может быть успешно загружен: устанавливает месторасположение объектного файла, проверяет номера версий и разрешаемые символы (идентификаторы). -q He печатает список любых неразрешенных символов. Не сообщает о несоответствии версий. -г Некоторые пользователи компилируют модули под UID (идентификатором) обычного пользователя, а затем инсталлируют их в качестве суперпользователя. По умолчанию попытка использовать модуль, владельцем которого не является суперпользователь, завершается аварийно. Опция -г разрешает суперпользователю загружать модули, владельцем которых он не является, хотя в целях безопасности этого делать не рекомендуется. -s Вместо терминала выводит все в syslog (системный журнал). -v Переходит в режим подробного комментирования. -X, -х Соответственно экспортирует (по умолчанию) или нет все внешние символы (идентификаторы) модуля. -Y, -у Соответственно добавляет (по умолчанию) или не добавляет символы ksymoops в ksyms (копия /proc/ksyms). -Р prefix Позволяет использовать модули со специальными префиксами, добавляемыми к их символьным именам, для ядра SMP (Symmetric Multi Processing - симметричного мультипроцсссирования). Некоторые модули дополнительно принимают параметры [symbol=valuc...] для поддержки своих операций. Часто такими параметрами являются порты ввода/вывода и значения IRQ (прерываний), которые отличаются на разных компьютерах и не могут быть определены техническими средствами. Параметры могут быть числовыми (десятичными, восьмеричными и шестнадцатеричными) и строковыми (строка символов1. Начиная с ядра 2.1, строка символов заключается в кавычки и таким образом распознается. Числовые значения распознаются, как в языке С: например. 18.022, Ох 12 (соответственно десятичное, восьмеричное и шестнадцатсричное значения).
348 II. Команды install - копирует файлы, устанавливая режимы доступа, а также владельца/группу. Синтаксис install [option]...source dest Install [option]...source directory Install -d [option] directory В первом формате копирует source в desi или во втором формате - несколько файлов source в указанный каталог directory. В третьем формате создает все компоненты заданного каталога. Эта команда обычно применяется при инсталляции пакетов: для копирования программ в нужные каталоги, для создания требуемых каталогов и установки полномочий доступа (см. диаграмму в описании команды xgettext). Опции -b, —backup [=control] Создает при инсталляции копию каждого уже существующего файла, в противном случае он будет перезаписан или удален. -d, —directory Трактует все аргументы как имена каталогов; создает все компоненты указанных каталогов. -D Полезна в первом формате команды install. При копировании source в dest создает все компоненты dest кроме последнего. -С Инсталлирует файл, даже если таковой уже существует. -g, -group=group Устанавливает группу владельца файла или каталога в значение group. -m, — mo<\e=mode Устанавливает полномочия на доступ к файлу или каталогу, как команда eh mod. По умолчанию принято значение 0755. -о, —owner=ovvner Устанавливает владельца файла или каталога. Эта опция доступна только суперпользователю. -р, —preserve-timestamps Назначает время доступа/модификации исходных файлов соответствующим выводным. -s, —strip Отбрасывает таблицы символов (идентификаторов) устанавливаемых программ. Опция применяется лишь для первых двух форматов. -S, — suff\x=suffix Перекрывает обычный суффикс имен файлов, используемый при копировании, устанавливая suffix. Обычно при копировании суффикс задается симполом ~.
П. Команды 349 -v, --verbose Распечатывает имя каждою созданного каталога —help Выводит список опций и завершает программу. —version Выводит информацию о версии программы и завершает ее выполнение Пример # install -d -о sofla /home/sofia/sourcesa t Создается подкаталог /home/sofia/sourcesa, владельцем которого назначена Sofia; полномочия доступа установлены в значение rwxr-xr-x, или 0755. ipchains - выполняет администрирование 1Р-брандмауэров Синтаксис ipchains -[ADC] chain rule-specification [option] ipchains -[RI] chain rulenum rule-specification [option] ipchains -D chain rulenum [option] ipchains -h [icmp] ipchains -[LFZNX] [chain] [option] ipchains -P chain target [option] ipchains -H [-L|-S] [option] Программа используется для установки, поддержки и проверки правил IP-брандмауэра, Специальная программа, которая, основываясь на некоторых правилах, запрещает или разрешает передачу проходящей через нее информации, называется брандмауэром (firewall). Предназначение брандмауэра - не допустить выход информации из некоторой подсети наружу или, наоборот, оградить ее от вмешательства извне. Заложенные правила в зависимости от типов осуществляемых проверок можно разделить на 4 категории: проверки по входной, выходной и пересылочной цепочкам правил, а также цепочки, определенные пользователями. Правила фильтрации брандмауэра указывают критерий для отбора информационного пакета и выполняемые действия. В качестве действия target может быть определено одно из указанных ниже значений: имя цепочки правил, определенных пользователем ACCEPT принять пакет DENY запретить пакет REJECT отвергнуть пакет и уведомить об этом отправителя MASQ замаскировать пакеты, как будто источником и\ происхождения является локальный узел; к тому же автоматически демаскировать распознанные обратные пакеты, осуществляя их проверку по пересылочной цепочке REDIRECT осуществить проверку по входной цепочке правил (или определенной пользователем), передавая пакеты локальному соксту. даже сечи они были отправлены на дистанционный у icn
350 It. Команды RETURN проверять следующее правило в предшествующей (вызывающей) цепочке правил Опции, распознаваемые ipchains, делятся на несколько групп: команды (только одна в каждой командной строке), указывающие выполняемые действия, параметры, играющие роль спецификаций и применяемые в командах, и дополнительные опции. Команды —append, -A chain Добавляет одно или более правил rule-specification в конец выбранной цепочки chain. —delete, -D chain rulenum Удаляет одно или более правил из выбранной цепочки. —replace, -R chain rulenum Замещает правило в выбранной цепочке (нумерация с единицы). —insert, -I chain [rulenum] Вставляет одно или более правил rule-specification в выбранную цепочку chain под заданным номером rulenum. —list, -L [chain] Отображает все правила выбранной цепочки правил. —flush, -F [chain] Опорожняет (удаляет все правила одно за другим) выбранную цепочку. —zero, -Z [chain] Обнуляет счетчик пакетов и счетчик байт во всех цепочках. —new-chain, -N chain Создает новую пользовательскую цепочку под указанным именем. —delete-chain, -X chain Удаляет указанную пользовательскую цепочку правил. —policy, -P chain target Устанавливает "полицейский контроль" над действием target, заданным для цепочки chain. —masquerading, -M Позволяет отобразить текущие маскируемые подключения (совместно с опцией -L) или установить параметры маскировки для ядра (совместно с опцией -S). —set, -S tcp tcpfin udp Меняет при маскировке пакетов время тайм-аута (в секундах) соответственно для tcp-сессий (tcp), tcp-сессий после получения последнего пакета FIN (tcpfin), а также для UDP-пакетов. —check, -С chain Проверяет заданный пакет по выбранной цепочке. -h [iemp] Выводит описания синтаксиса команд.
II. Команды 351 ара тры -р, —protocol [!] protocol Проверяет коммуникационный протокол правила или пакета. Указанный protocol может принимать одно из следующих значений: tcp udp icmp all числовое представление одного из перечисленных или отличающегося протокола -s, —source[!] address [/mask] [!] [port[:port]] Указывает исходную спецификацию, где address может быть или именем узла, или сетевым именем, или IP-адресом; mask обозначает сетевую маску, а аргумент ! перед адресом или портом инвертирует смысл; port - номер порта, представляющий из себя числовое значение ICMP-типа или один из типов имен для ICMP. —source-port [!] [port[:port]] Определяет исходный порт или диапазон портов (через двоеточие). -d, —destination [!] address [/mask] [!] [port[:port]] Указывает спецификацию (аналогично исходной) порта назначения. —icmp-type [!] typename Определяет спецификацию типа ICMP (опция -h icmp отображает существующие типы). -j, —jump target Определяет действие правил, распространяющихся на пакет. -i, —interface [!] name Указывает необязательное имя интерфейса, через который должен быть получен пакет. [!] -f, —fragment Указывает, что правило относится ко второму и последующим фрагментам фрагментированных пакетов. Другие дополнительные опции -b, —bidirectional Правило проверяется для IP-пакетов в обоих направлениях. -v, —verbose Режим подробного комментирования происходящего с указанием адреса интерфейса, опций правил и масок TOS (типов обслуживания), счетчиков пакетов и байт. -n, —numeric Выводит адреса и порты в числовом формате. По умолчанию отображает их как имена узлов, сетевые имена или службы. -I, —log Включает регистрацию совпавших пакетов в журналах ядра.
352 II Команды -m, —mark markvalue Помечает совпавшие паке гы, соответственно добавляя или вычитая значение markvalue, если оно начинается со знака плюс или минус, из текущего помеченного номера пакета (нумерация с нуля). -t, —TOS andmask xormask Помечает используемое для модификации поле TOS в заголовке IP. Если пакет соответствует правилу, сначала выполняется поразрядное сложение его поля TOS с маской andmask, а затем осуществляется поразрядное умножение результата предыдущего действия с маской xormask. Эта опция существенна, если действия правил установлены в значение DENY или REJECT. [!] -у, —syn Только сопоставляет TCP-пакеты с установленным битом SYN и очищенными битами АСК и FIN; такие пакеты используются, если запрашивается инициализация TCP-подключения. Если опции -у предшествует флаг!, смысл опции меняется на противоположный (инвертируется). —line-numbers При выводе добавляет номера, соответствующие положению правила в цепочке, к началу каждого правила. -х, —exact Выводит вместо округленных точные значения счетчика пакетов и счетчика байт. —no-warnings Запрещает печать предупреждений. Пример Следующее правило определяет пакеты для установки соединения, отправленные с узла 192.168.20.1: -р tcp -S 192.168.20.1 -у ipchains-restore Си аксис ipchains-restore [-f][-v][-p] On ии -f Очищает цепочки, не требуя подтверждений, -v Выводит каждое правило. -р Создает каждую несуществующую, но упомянутую цепочку. Ввод информаци завершается при нажатии Ctil+D. восстанавливает со стандартного ввода цепочки 1Р-брандмауэра
II. Команды 353 ipchains-save - выводит цепочки правил IP-брандмауэра на стандартный выво ■. Синтаксис ipchains-save [cbain][-v] Необязательный аргумент chain определяет имя сохраняемой цепочки. Опции -v Распечатывает каждое правило. П имер # ipchains-save -v :input ACCEPT :forward ACCEPT :output ACCEPT t ispell ерактивный орфогра»ический корректор. и так ис ispell [conmon-flags][-K\-V][-bcontext][-V] file ispell [common-flags] -1 ispell [common-flags] [~f file] [s] {-a|-A} ispell [-d file] [-w chars] -c ispell [-d file] [-w chars] -e[e] ispell [-d file] -D ispell -v[v] Проверяет правописание слов в указанных файлах file, используя системные словари. Программа ispell отображает каждое не найденное в словаре слово наверху экрана, позволяя вам изменить его. Если слово почти соответствует найденному в словаре, но отличается одной буквой, отсутствует пробел или дефис, то оно отображается в следующих строках. Программа ispell пытается "угадать" слово по его корню, выставляя перед словом вопросительный знак. В результате строка, содержащая слово, и предшествующая строка печатаются внизу экрана. Ниже приведены общие опции common-flags, пригодные для многих форматов. Общие пци -I Указывает, что входной файл поступает в формате Те\ или LnTeX. -п Указывает, что входной файл поступает в формате nrofl/'lroff.
354 II Команды -b Создает резервную копию входного файла, добавляя к его имени расширение .bak. -х Не создает резервной копии. -В Отображает слова с пропущенными между ними пробелами как орфографические ошибки. -С Игнорирует пропущенные между словами пробелы ("склеившиеся" слова). - Р Запрещает создавать дополнительные комбинации корня н могущих быть окончаний. -т Допускает отсутствующие в словаре комбинации корня и окончаний. -S Сортирует список предлагаемых вариантов по вероятности появления. -d file Указывает имя файла, содержащего системный альтернативный словарь. -р file Указывает имя файла, содержащего персональный альтернативный словарь. -w chars Указывает помимо алфавитных дополнительные символы, которые могут быть частью слова. -W л Определяет допустимую длину слов, воспринимая лишь те слова, которые содержат не менее п символов. Если вы хотите, чтобы все слова независимо от их длины проверялись по словарю, укажите -VV 0. -Т type Предполагает, что все файлы имеют указанный тип форматирования. Аргумент type может быть либо одним из уникальных имен, определенных в файле языковых окончаний (см. nroff), либо суффиксом имен файлов, включающим обязательную точку. Дополнительные опции -а Предполагает, что корректор используется в конвейере. При чтении входного файла для каждого проверяемого слова записывает строку на стандартный вывод. Прн этом записанная строка начинается со следующих символов: * слово было найдено в главном или персональном словаре + обычно за плюсом следует пробел и корень слова, который был найден в словаре после удаления окончания слово является конкатенацией двух слов (опция -С) & само слово отсутствует в словаре, но найден его аналог, идущий среди прочей дополнительной информации строки срачу через пробел после символа & # через пробел следует отсутствующее в словаре слово -А Подобна опции -а, но если строка начинается с выражения &Include_Filc&, остаток строки следует рассматривать как имя файла, из которого следует в дальнейшем считывать слова. -s Имеет смысл лишь совместно с опцией -а или -Л. Корректор ispdl ос га- иавливает сам себя по сигналу SIGTSTP (см. приложение 1) носче ыж
II. Команды 355 дой строки ввода. Продолжение следует лишь после получения сигнала SIGCONT. -f file Имеет смысл лишь совместно с опцией -а или -А. Записывает результаты орфографической проверки в указанный файл. -с Считывает список слов со стандартного ввода, записывая для каждого слова возможные корневые слова и окончания, результат направляет на стандартный вывод. -е [е] Обратная опция для опции -с: создает список возможных слов на основе заданных ограничений. Параметр е принимает числовые значения из промежутка 1-4, определяя уровень обработки. -D Выводит из словаря на стандартный вывод таблицу окончаний. -1 Создает на основе информации стандартного ввода список не обнаруженных в словаре слов. -М Выводит внизу экрана маленькое меню возможных опций ispeli. -N Запрещает выводить внизу экрана меню опций ispeli. -hcontext Указывает количество строк контекста, отображаемого внизу экрана. По умолчанию определяется как некий процент от размера экрана. -v[v] Подробно информирует о ходе обработки; если задан двойной флаг, уведомляет об опциях, с которыми ispeli компилировалась. -V Выводит управляющие символы в стиле ЛС. Для интерактивного диалога с программой доступны односимвольные команды, регистр при этом игнорируется. Команды R Полностью заменяет текущее слово его аналогом. пробел Принимает слово лишь на этот раз. А Принимает слово как таковое лишь до конца сеанса работы ispeli I Принимает слово, занося его в персональный словарь. U Принимает слово, занося его строчными буквами в персональный словарь. 0-л Замещает слово на н-ое предлагаемое программой. L Производит поиск в системном словаре. X Записывает остаток файла, игнорируя ненайденные слова, и переходит к обработке следующего. Q Выходит из программы, не сохраняя результатов обработки. ! command Запуск команды command. Л L Обновляет экран. Л Z Останавливает программу ispeli. ? Выводит экран помощи.
356 II Команды Пример $ ispell -1 rectangle firewall adition fad adition $ Из четырех введенных слов (Ctrl+D после слова fad) корректору "не понравилось" слово adition. Совершенно верно! Следует писать addition. Так, пожалуй, освоишь правописание слов английского языка. Для других языков необходимо иметь соответствующие словари. jobs выводит список выполняемых или остановленных D заданий. Синтаксис jobs [-lnpjIpid ] Задав аргумент pid (идентификатор конкретного задания), можно ограничить вывод команды информацией только об этом задании. Опции -1 Выводит идентификаторы заданий и групп процессов. -п Выводит информацию о заданиях, состояние которых изменилось со времени последнего запроса. -р Выводит только идентификаторы групп процессов. Пример S jobs -n [2]+ Running find / -name 1111 -print & $ JOIfl - сливает строки двух файлов в общее поле. 1\ Синтаксис join loptioo] filel filel Утилиту join часто применяют для объединения двухколоночных файлов. В файлах file\ и file! ищутся определенные столбцы и "склеиваются" те их строки, значения которых совпадают. По умолчанию "склеиваемое" поле является первым и отделяется пробелом. Если вместо одного из файлов (но не обоих) стоит дефис, join считывает стандартный ввод.
II. Команды 357 Опции -a side 11ечатает непарные строки из файла side. -е empty Замещает пропущенные входные поля строкой empty. -i, —ignore-case При сравнивании полей не учитывает регистр символов. -j field Эквивалентно -1 field -2 field. -jl field Эквивалентно -I field. -j2 field Эквивалентно -2 field. -o format Использует указанный формат при создании выходной строки. -t char Использует char как разделитель входных и выходных полей. -v side Подобна опции -a side, но запрещает печатать соединенные выходные (П) строки. -1 field Объединяет по указанному полю файла filel. -2 field Объединяет по указанному полю файла file2. —help Отображает список опций и завершает программу. —version Выводит информацию о версии и завершает программу. Если указана опция -t char, идущие впереди пробелы отдельных полей игнорируются. Любой параметр field является номером поля (нумерация с единицы). Пример % join -t, vvv vvvl % Объединяет файлы vvv и vvvl по первому столбцу. Поля должны быть разделены запятой. kbd mode - выводит и устанавливает текущий режим — драйвера клавиатуры. и т к и kbd_mode l-auks] Без опций kbd_mode выводит текущий режим. Оп ии -s Устанавливает режим RAW (режим scancode, см. showkcy). -к Устанавливает режим MEDIUMRAW (режим kcycode, см. showkc)). -а Устанавливает традиционный режим XLATE (ASCII), использующий любой 8-битный набор символов. Предполагается, что такой набор позже транслируется в UNICODE, а затем отображается на экране с помощью consolcchars -ni.
358 II Команды -и Устанавливает режим UNICODE (UTF-8), предполагающий 16-битный набор символов, передаваемых в ядро в виде 1, 2 или 3-х байт в соответствии с кодированием UTF-8. В двух последних режимах используется отображение клавиатуры с помощью loadkeys. Следует отметить, что установка режимов иных, нежели XLATE или UNICODE, может сделать вашу клавиатуру недоступной. Эта команда полезна, если после аварийного завершения какая-нибудь программа оставляет клавиатуру в непригодном режиме. Для ее возврата в режим XLATE или UNICODE следует использовать kbd inude. КЬиСОПТ ICJ - несложный интерфейс для конфигурирования системной клавиатуры. < Сиктмдас kbdconfig (—back][--test] ithdcMllig производит настройку файла /ctc/sysconfig/keyboard, содержащего имя таблицы преобразования клавиатуры. Опции •' —back По умолчанию в окне программы kbdconfig находится кнопка Cancel (завершение). Если определена эта опция, вместо кнопки Cancel предлагает кнопку Back (возврат). --test Разрешает запускать kbdconfig обычным пользователям (не только суперпользователю). Но в этом случае изменения в конфигурации не сохраняются. Программа kbdconfig возвращает: 0 в случае успешного завершения 1 если пользователь щелкнул переключателем мыши на кнопке Cancel или Back 2 в случае возникновения ошибки kbcjrate переустанавливает для клавиатуры скорость повтора и время задержки. Сиипццги * kbdrate |-«][-r rate][-d delay] Когда Linux загружается, ядро устанавливает скорость (темп) повтора в максимально допустимое для данной клавиатуры значение. С одной стороны, это хорошо, но, если скорость повтора чересчур высока, можно легко получать даже при самом незначительном нажатии клавиш повтор символов. В этом случае целесообразно применить kbdratr для синхронизации скорости повтора.
II. Команды 359 Время задержки - это промежуток времени, в течение которого клавиша может быть нажата без инициирования повтора. Применяя kbdrate без опций, можно установить скорость повтора в 10.9 cps (characters per second - символов в секунду) и время задержки в 250 ms (миллисекунд) для систем Intel и М68К. Эти же значения приняты по умолчанию для IBM. Что касается SPARC-систем, то использование kbdrate без опций установит скорость повтора в 20 cps, а время задержки — в 200 ms. Опции -s Подавляет вывод сообщений. -г rate Устанавливает скорость повтора в значение rate. Для Intel принят диапазон от 2.0 до 30.0 cps. Однако допускаются только определенные значения, поэтому программа выберет ближайшее допустимое значение для указанного пользователем. Для SPARC принят диапазон от О (без повторов) до 50 cps. -d delay Устанавливает время задержки. Для Intel принят диапазон от 250 до 1000 ms с шагом 250 ms; для SPARC - от 10 до 1440 ms с шагом 10 ms. -V Выводит информацию о версии программы и завершает ее. Не все клавиатуры позволяют работать с kbdrate (в частности, непозволительно работать с клавиатурой Gateway AnyKey). >* Пример ~ : Набрав kbdrate без опций, можно увидеть примерно такое сообщение: Typematic Rate set to 10.9 cps (delay = 250 ms) kdm - менедже» дисплея KDE. Синтаксис kdm Может рассматриваться как альтернатива xdm. Если в текстовой консоли набрать такую команду, то возникает панель регистрации KDE. Достаточно ввести имя пользователя и его пароль. Впрочем, такую команду лучше включить в один из файлов инициализации, например, в .bash_profile. kill завершает процессы. D Qhh аксис kill -1[в1доа1] kill [-в eignal\ -pi pid...
360 II. Команды Команда kill посылает сигнал завершения указанному процессу pid. Если не указано ни одного сигнала, посылает сигнал SIGTbRM. Сигнал SIGKJLL(9) является безусловным, оповещает об обязательном завершении процесса и не может быть перехвачен. Опции -signal Определяет посылаемый сигнал по имени либо по номеру (см. приложение I). -р Лишь выводит идет ификаторы поименованных процессов, не посылая сигнал. -1 signal Выводит имя указанного по номеру сигнала или полный список существующих сигналов, если не указано никакого сигнала. -s signal Определяет посылаемый сигнал (см. приложение I). Процесс может завершить либо его владелец, либо суперпользователь. Большинство оболочек, или командных процессоров, имеют встроенную команду kill. Пример $ kill -9 1027 $ При успешном завершении процесса никакое сообщение не выводится, оно появится лишь при попытке завершить процесс без наличия соответствующих прав либо при попытке "убить" несуществующий процесс. killall - завершает все процессы, запущенные указанной командой. Синтаксис killall [-egiqvw][-signal] name... killall -1 killall -V Посылает сигнал завершения всем процессам, которые были запущены командой пате. Чтобы завершить процессы, возникшие при запуске исполняемого файла, следует использовать прямой слэш в имени команды. Опции -е Завершает все процессы, очень длинные имена которых сопоставляются по первым 15 символам. -i Требует подтверждения при завершении процессов. -I Выводит полный список существующих сигналов (см. приложение 1). -v Подробно комментирует свои дсйстпия.
II. Команды 361 -signal Определяет посылаемый сигнал по имени или номеру (см. приложение I) Специальный сигнал 0 проверяет наличие процесса. -V Выводит информацию о версии программы и завершает ее. -q Подавляет комментарии, если ни один из процессов не был завершен. -g Завершает всю группу процессов, к которой принадлежит указанный процесс. Все процессы одной группы должны иметь один и тот же действующий UID (одного владельца). -w Ожидает полного завершения всех снимаемых процессов. Утилита killall иной раз может ждать бесконечно: сигнала, который игнорируется, зомби-процесса. Пример $ killall -0 find S Не выдает никаких сообщений, если проверяемый процесс существует. ksyms - отображает экспортируемые символы (идентификаторы) я«ра. Синтаксис -.- /sbin/ksyms [-a][-h][-m] Информация выводится в следующем формате: адрес идентификатора, имя и определяемый модуль. Опции i ; -а Отображает все символы (идентификаторы). По умолчанию собственные идентификаторы ядра не выводятся. -h He выводит заголовки столбцов листинга. -т Включает в листинг информацию о модулях: адрес загрузки и размер. kudzu - обнаруживает новые или замененные устройства в системе и конфигурирует их. Синтаксис kudzu После старта kudzu обнаруживает текущие аппаратные средства (устройства) и проверяет их на основании БД, хранящейся в файле /ctc/sysconfifi/hwconf, если таковой существует. Установив, какое устройство было добавлено или удалено из системы, предоставляет возможность пользователям сконфигурировать дополнительное оборудование, а затем обновляет содержимое БД.
362 II Команды Если упомянутая БД не существует, kudzu пытается установить, какие устройства былн уже сконфигурированы, просматривая /etc/modules.conf /etc/syscofig/network-scripts/ и /etc/Xll/XF86Config. Опции ' —usage Выводит краткое сообщение об использовании программы, —help, -? Печатает вспомогательную информацию. -q, —quiet He выдавая сообщений, выполняет только конфигурирование, не требующее ввода дополнительной информации от пользователя. -s, —safe Выполняет попытку конфигурирования в безопасном режиме, не мешая устройству. -t, —timeout [seconds] Устанавливает период тайм-аута (в секундах) для начального диалога. Если в течение этого периода ни одна клавиша не будет нажата, программа kudzu завершается, не обновляя содержимого /etc/sysconfig/hwconf. last тр. --т = е прои ед и- в - - р- траци Синтаксис ' last (-R][-AU>][-n fliua][-adix](-f file\[-t ¥¥¥¥HHDDBBMHSSJ[Daae...] |tty...J Применяйте команду last, чтобы узнать, кто использовал систему, на каких терминалах он работал, когда вошел и вышел из системы. Команда last использует информацию, регистрируемую в файле /var/log/wtmp. Могут быть заданы имена пользователей (пате) н терминалы (tty), тогда last выводит информацию лишь по этим элементам. Опци '-' -пит Счетчнк, указывающий число отображаемых строк, -п пит Работает по аналогии с -пит. -t YYYYMMDDHHMMSS Отображает ситуацию с регистрациями на указанное время (ГГГГММДДЧЧММСС). -R Не выводит поле с именем хоста. -а Отображает имя хоста в последнем столбце. -d Хранит не только имя, но и адрес дистанционного хоста. Транслирует IP-адрес в имя хоста (для нелокальных подключений). -i Подобна опции -d, но отображает IP-адрес в точечно-десятичном фор-
II Команды 363 -х Отображает информацию по закрытиям системы и изменение уровней выполнения. -ffile Вместо принятого по умолчанию /var/log/wtmp использует указанный файл. Команду last особенно полезно применять для выявления дистанционных пользователей. Пример Чтобы определить, когда конкретный пользователь регистрировался в системе, задайте в качестве аргумента его имя. t last misha misha tty3 Ned Sep 17 10:40 still logged in wtmp begins Tue Sep 16 17:01:13 2003 Пользователь misha регистрировался на терминале tty3. lastb отражает все безуспешные регистрации. Синтаксис lastb [-к][-пшв][-п nura]l-adix][-f file][-t YYYYMtWDEBHMSS]lBame...} [tty...] Применяйте команду lastb, чтобы узнать, кто, когда и откуда пытался зарегистрироваться в системе. Команда lastb использует БД, хранящуюся в файле /var/fog/btmp, неудачных попыток регистрации в системе. Могут быть заданы имена пользователей (пате) и терминалы (tty), тогда lastb выводит информацию лишь по этим элементам. пци -пит Счетчик, указывающих число отображаемых строк. -п пит Работает по аналогии с -пит. -t YYYYMMDDHHMMSS Отображает ситуацию с регистрациями на указанное время (ГГГГММДДЧЧММСС). -R Не выводит поле с именем хоста, -а Отображает имя хоста в последнем столбце. -d Хранит не только имя, но и адрес дистанционного хоста. Транслирует IP-адрес в имя хоста (для нелокальных подключений). -i Подобна опции -d, но отображает IP-адрес в точечно-десятичном фор мате, -х Отображает информацию по закрытиям системы и изменение уропней выполнения.
364 II Команды -ffile Вместо принятого по умолчанию /var/log/btmp использует указанный файл. Команду lastb особенно полезно применять для выявления злоумышленников. Пример Чтобы определить терминал, с которого, не зная пароля конкретного пользователя, кто-то пытался зарегистрироваться в системе под его именем, задайте в качестве аргумента это имя. t lastb sofia sofia tty4 Wed Sep 17 10:46 - 10:46 (00:00) sofia tty4 Wed Sep 17 10:45 - 10:45 (00:00) btmp begins Wed Sep 17 10:45:49 2003 latex - позволяет создать форматированный текстовый файл, используя программу ТеХ и пакет макроопределений LaTeX. Синтаксис tex {option] [ texname[ .tex] [commands] tex [option] \first-line tex [option] bfmt args Обрабатывает входной текст документа со вставленными командами форматирования. Создает по меньшей мере три выходных файла. D Не зависящий от устройства файл типа .dvi. Содержит команды, которые могут быть оттранслированы в команды различных устройств вывода. Формат документа LaTeX можно отобразить, используя специальный просмотрщик xdvi, который можно обнаружить по следующему маршруту: KDE меню о Графика ■* Просмотрщик DVI D Файл .log, содержащий итоговую информацию и сообщения об ошибках, встреченных во входном файле. D Файл .aux, используемый LaTeX для секционирования. Команда latex запускает ТеХ с файлом texname, обычно создавая texnamc.dvi. После того как файл lexname прочитан, любые оставшиеся команды commands отображаются как ввод ТеХ. Если первая строка texname имеет вид %&fmt, где fmt - это существующий файл типа .fmt, использует его. Также использует NAMESml. где NAME- это имя вызываемой программы, обычно tex. Если первый аргумент (не опция) начинается с обратного слэша, команда latex интерпретирует все аргументы как входную строку ТеХ. Если первый аргумент (не опция) начинается с символа &, следующее далее слово берется в качестве файла fmt для чтения, перекрывая все прочие установки. Если в командной строке отсутствуют аргументы или опции, latex приглашает для ввода.
II. Команды 365 -fml=jmtname Использует параметр Jmtname вместо извлеченного из имени программы или из строки типа %&. -interaction=5fring Устанавливает режим диалога, где siring может принимать следующие значения: batchmode пакетный режим scrollmode обрабатывает файл, не останавливаясь после каждой ошибки errorstopmode обрабатывает файл, останавливаясь после каждой ошибки -ini Будет вызывать программу initcx и создавать файл типа .fmt, содержащий определения шрифтов и макросов. -kpathsea-debug=ni/wber В соответствии с битами number устанавливает флаги маршрутов поиска. [-no]-mktex=^m/ Отключает/включает генерацию mktexfmt, где fmt принимает значение tex или tfm. TeX также считывает TFM-файлы для загрузки шрифтов, определенных для данного документа. По умолчанию запускается программа mktcxtfm, создающая любые несуществующие TFM-файлы. -output-comment=.y/nwg Использует строку string как комментарий к DVI-файлам вместо обычного комментария, содержащего дату и время запуска ТеХ. -mltex Включает расширения MLTeX, такие, как \charsubdcf. Позволяет использовать несуществующие образцы шрифтов, объявленные в замещениях образцов. Команда \charsubdcf определяет, как создать образец шрифта, не обязательно существующего (умляуты, диакритический знак над гласной и т.д.), с помощью двух существующих образцов. -progname=.yfn«g Устанавливает имя программы как string. -shell-escape Разрешает выполнять команды оболочки, передаваемые на выполнение с помощью команды \Y/ritc\${SHELL_COMMAND]. -translate-file=tcxname Использует ТСХ-файл по имени tcxname. Файлы ТСХ (ТеХ character translation - трансляция символов ТеХ) помогают непосредственно поддерживать ввод 8-битных международных символов, если использ)- ются шрифты, содержащие эти символы. ТСХ-файлы переводят входной код символа (код клавиатуры) во внутренний код ТсХ (набор ASCII), позволяя на ходу вносить изменения в таблицы преобразований. ТСХ-файлы можно также указать в первой строке главного док) мента: %s -translation-file^fccxnaj&e.
366 II Комэццы Собственно команды самой latex начинаются с имени команды, которое содержит обратный слэш и строку букв или единственный символ (не букву). Аргументы, заключенные в квадратные скобки, являются необязательными, - заключенные в фигурные скобки - обязательными. Пакет LaTeX чувствителен к регистру. Все команды вводятся на нижнем регистре, если только не указано обратное. - компоновщик GNU. С . Id (-о oatput]loption] objfile... Id объединяет ряд объектных и архивных файлов objfile, располагая их данные и увязывая символические ссылки. Очень часто последний шаг при построении скомпилированной программы - это вызов Id. Эта версия Id использует общие установки библиотек BFD при обработке объектных файлов, что позволяет считывать, объединять и записывать объектные файлы во многих форматах, например COFF или a.out. Файлы разных форматов могут компоноваться совместно. Компоновщик Id - очень гибкий инструмент, как в плане собственно компоновки, так и диагностики. Поэтому существует большое количество опций командной строки и переменных окружения, с помощью которых можно управлять его возможностями. Имя выходного файла с результатами компоновки определяется с помощью опции -о output. По умолчанию используется файл a.out. Основные орции -^.architecture Задает двухбуквенные имена, указывающие члены семейства Intel 960. Эта опция формирует поисковую стратегию компоновщика в привязке к архитектуре компьютера. -b input-format Указывает двоичный формат входных объектных файлов. Эта опция не столь уж н полезна, поскольку компоновщик конфигурируется таким образом, что распознает заданный по умолчанию формат, который также можно получить из переменной окружения GNUTARGET. Список доступных двоичных форматов можно получить с помощью objdump -I. -Bstatic He компонует без разделяемых библиотек. -Bdynamic Компонует вопреки динамическим библиотекам. -Bsymbolic Разрешает ссылки на глобальные символы с учетом определений, существующих в разделяемых библиотеках, если таковые имеются. Эта опция лишь существенна на платформах ELF, где поддерживаются разделяемые библиотеки. -с commandfile Считывает команды компоновщика из указанного файла. —crcf Выводит таблицу перекрестных ссылок.
II. Команды 367 -d, -de, -dp Выделяет пространство для общих символов (идентификаторов) -defsym svmbol=expr Создает в выходном файле глобальный символ (идентификатор)symbol, содержащий абсолютный адрес, задаваемый выражением ехрг. В качестве параметра ехрг можно указать шестнадцатеричную константу или имя существующего символа. Можно использовать знаки плюс или минус, чтобы соответственно добавлять или вычитать шестнадцатерич- ные константы или символы. —demangle Пытается представить имена символов (идентификаторов) в удобном для чтения формате, при этом отбрасывая идущие впереди символы подчеркивания. Опция принята по умолчанию. —no-demangle He пытается представить имена символов в удобном для чтения формате. По умолчанию принята опция —demangle, если только не установлена переменная окружения COLLECTNODEMANGLE. -е entry Вместо заданной по умолчанию точки входа определяет указанный символ (идентификатор) в качестве начала при исполнении программы. -Е, —export-dynamic При создании файла ELF добавляет все символы в таблицу динамических символов, хотя обычно в этой таблице содержатся лишь символы (идентификаторы), используемые динамическим объектом. -f name, —auxiliary name При создании ELF-объекта устанавливает внутреннее поле DT_AUXILIARY в указанное имя, это сообщает динамическому компоновщику, что таблица символов разделяемого объекта будет использоваться как вспомогательный фильтр для таблицы символов указанного объекта. -filter name При создании ELF-объекта устанавливает внутреннее поле DT_FILTER в указанное имя, это сообщает компоновщику, что таблица символов разделяемого объекта будет использоваться как фильтр для таблицы символов указанного объекта. soname name При создании разделяемого объекта ELF устанавливает внутреннее поле DT_SONAME в указанное имя. Когда исполняемый файл компонуется с разделяемым объектом, который имеет поле DTSONAME, тогда исполняемый файл, запускаемый динамическим компоновщиком, будет пытаться загрузить разделяемый объект, указанный полем DTSONAME вместо того, чтобы использовать имя файла, данное компоновщиком. Печатает сведения об опциях на стандартный вывод и завершает программу. Добавляет архивный файл аг к списку файлов компоновки. Опция может использоваться многократно.
3b8 II Комзццы -hsearchdir Добавляет маршрут searchdir к списку маршрутов, обследуемых Id при поиске архивных библиотек. -М Печатает на стандартный вывод диагностическую информацию по компоновке. -Map mapfile Направляет диагностическую информацию по компоновке в файл mapfile. -memulation Эмулирует указанный компоновщик emulation. Список доступных эмуляций можно получить с помощью опции —verbose или -V. -N Указывает читаемый и записанный текст, а также секции данных. -п Устанавливает текстовый сегмент в режим "только для чтения". -noinhibit-exec В любом случае создает выходной файл даже в случае ошибок. -о output Указывает имя программы, создаваемой Id; по умолчанию - a.out. -Olevel Генерирует оптимизированные выходные файлы уровня level. В качестве level указывается числовое значение больше, чем 0, что существенно увеличивает время компоновки. -R filename Считывает имена идентификаторов и их адреса из файла_/?/еиате, но не настраивает и не включает их в вывод. -г Выполняет частичную компоновку, создавая выходной файл, который затем может использоваться как входной для Id. -rpath directory Добавляет каталог к маршруту поиска библиотек времени выполнения; используется для формата ELF с разделяемыми объектами. -rpafh-link directory Включает дополнительный каталог для поиска разделяемой библиотеки. При использовании ELF одна разделяемая библиотека может запрашивать другую. -S Не включает информацию отладчика о символах (идентификаторах) в выходной файл. -shared Создает разделяемую библиотеку для ELF. —sort-common Запрещает обычную сортировку глобальных символов (идентификаторов) в соответствующих выходных секциях. -Tbss o/g/-Tdata o/g/-Ttext org Использует org в качестве стартового адреса соответственно для секций bss, данных или текстовой секции выходного файла. -t Печатает имена входных файлов в порядке их обработки программой Id. -u sym Вводит sym в выходной файл как неопределенный символ. Может повторяться с различными опциями, добавляя неопределенные символы (идентификаторы).
II. Команды 369 -Ur При компоновке программ на C++ разрешает ссылки на конструкторы Во всех остальных случаях действует подобно -г. —verbose Выводит номер версии Id и список допустимых эмуляций —warn-constructors Предупреждает об использовании глобальных конструкторов, что пригодно лишь для некоторых форматов объектных файлов. —warn-once Однажды предупреждает о каждом неопределенном символе (идентификаторе). —warn-section-align Предупреждает, если адрес выходной секции меняется по причине выравнивания. —whole-archive Для каждого архива, заданного в командной строке после опции —whole-archive, включает в компоновку каждый его объектный файл. —no-whole-archive Отключает действие опции —whole-archive. -X Уничтожает все временные локальные символы, чьи имена начинаются cL. -х Уничтожает все локальные символы (идентификаторы). Idconfig - определяет связывание ссылок во время выполнения. Синтаксис Idconfig [-DvnKX][-f conf][-C сасЛе][-г root] directory... Idconfig -1 [-Dv] library... Idconfig -p Создает необходимые связи и кэш, используемый во время выполнения компоновщиком ld.so, для наиболее новых разделяемых библиотек, найденных в каталоге directory, в файле /ctc/ld.so.conf и в каталогах /usr/lib и /lib. Программа Idconfig проверяет заголовок и имена файлов библиотек, чтобы установить, каких версий должны быть их обновленные ссылки. Обычно Idconfig запускается суперпользователем, так как требует полномочия на запись на некоторые системные каталоги и файлы. Чаще запускается автоматически во время загрузки из файла /ctc/rc или вручную, когда инсталлируется новая DLL. Опции -D Устанавливает режим отладки. Предполагает опции -N и -X. -v Печатает текущий номер версии, имена пройденных каталогов и люоые созданные связи.
370 II Команды -п Обрабатывает только кагал01 и directory, указанные в командной строке. Не обрабатывает /usr/lib и /lib, а также каталоги, указанные в /etc/ld.so.couf. Предполагает опцию -N. -N Не перестраивает кэш. Связи тем не менее обновляются, если только не указана опция -X. -X Не обновляет ссылки. Если только не указана опция -N, кэш все-таки перестраивается. -f conf Вместо /ctc/ld.so.conf использует conf. -С cache Вместо /etc/ld.so.cache использует cache. -г root Вместо каталога root использует заданный параметром root каталог. -I Вручную связывает отдельные библиотеки library. Опция рассчитана на квалифицированных пользователей. -р Печатает список каталогов и библиотеки, хранимые в текущем кэше. Пример После инсталляции новой DLL необходимо обновить в /lib символические ссылки разделяемой библиотеки. Это выполняет суперпользователь. ♦ /sbin/ldconfig -n /lib t iaa - распечатывает разделяемые библиотеки, необходимые каждой указанной программе. Синтаксис ldd [-vdr] program ldd —version ldd —help Печатает список разделяемых библиотек, необходимых каждой указанной программе program. Для программ типа a.out (старый формат) ldd просто разветвляется и "фиктивно" выполняет каждую программу. Динамический компоновщик Id.so, который обычно загружает разделяемые библиотеки, распознает специальный режим и распечатывает зависимости. Для программы формата ELF команда ldd тоже разветвляется и выполняет каждую программу с соответствующим набором переменных окружения. Динамический компоновщик ELF по имени Id-linux.so, который обычно загружает разделяемые библиотеки, распознает специальный режим и распечатывает зависимости. Опции --version Печатает информацию о версии и завершает прог рлмму. —help Псчагает сообщения исполь топаний и завершает npoi рамму.
II. Команды 371 -d, — data-relocs Обрабатывает перемещения данных -г, — function-relocs Обрабатывает перемещения данных и функций. -v, —verbose Устанавливает режим подробного комментирования. П имеры $ ldd lexout libc.so.6 => /lib/libc.so.6 (0х4001Ь000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000) $ Это отчет Idd для типичной программы на языке С, использующей двоичный формат ELF. Для такой более сложной программы как gimp, используется куда больше разделяемых библиотек: S ldd /usr/bin/gimp libgtk-1.2.so.O => /usr/lib/libgtk-1.2.so.0 (Ох4001ЬООО) libgdk-1.2.so.O => /usr/lib/libgdk-1.2.SO.0 (0х4013Ь000) libgmodule-1.2.so.O => /usr/lib/libgmodule-1.2.so.O (0x4016f000) libglib-1.2.so.O => /usr/lib/libglib-1.2.so.0 (0x40172000) libdl.so.2 => /lib/libdl.so.2 (0x40196000) llbXext.so.e => /usr/XllR6/lib/libXext.so.6 (0x4019a000) libXll.so.6 => /usr/XHE6/lib/libXll.so.6 (0x401a6000) libm.so.6 => /lib/libm.so.6 (0x4024a000) libc.so.6 => /lib/libc.so.6 (0x40267000) libXi.so.6 => /usr/XHE6/lib/libXi.so.6 (0x4035c000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000) S Среди библиотек особо следует отметить следующие: библиотека X11 НЬХ11 .so.6 библиотека с инструментарием GIMP libgtk-1.2.SO.0 библиотека GDK (the General Drawing Kit - libgdk-1.2.SO.0 общий комплект для рисования) библиотека математических функций libm.so.6 библиотека С libc.so.6. Разделяемые (совместно используемые) библиотеки должны иметь тот же самый двоичный формат, что и приложение, использующее их.
372 II Команды less - позволяет просматривать содержимое файла в прямом и обратном направлениях. Синтаксис less -? less —help less -V less —version less [-[ + ]aBcCdeEfFgGiImMnNqQrRsSuUVwWX][-b buf~s][-h lines] [-j line] [-k filename] [-{oO] logfile][-p pattern] [-P prompt]l-t tag] [-T tagsfile]\-Ti tab][-y lines] [-[z] lines][+l+] cmd]l — ] I filename]... Программа less не считывает вначале весь входной файл filename полностью, как это делают другие текстовые редакторы, например vi, поэтому даже в случае больших входных файлов она стартует значительно быстрее. Программа less использует termcap или для некоторых систем terminfo, поэтому она может быть запущена на различных терминалах. С помощью команды - может быть изменено большинство опций, когда less уже запущена. Большинство опций может быть задано в двух форматах: дефис, за которым следует единственная буква, или же два дефиса, за которым следует длинное имя опции. Многие опции также выбираются из переменной окружения LESS, хотя опции командной строки перекрывают переменную LESS. Опция, появившаяся в переменной LESS, всегда может быть переустановлена в командной строке в значение по умолчанию, если ей предшествует комбинация знаков минус и плюс. Опции -?, —help Выводит все принимаемые less команды. При работе в некоторых оболочках, или командных процессорах, возникает необходимость вместо вопросительного знака вводить "А?". -a, —search-skip-screen Начинает поиск после последней отображенной на экране строки. По умолчанию поиск начинается со второй строки экрана. -Ьи, —buffers=n Указывает количество буферов, используемых для каждого файла. По умолчанию для каждого файла, исключая каналы (см. опцию -В), применяются 10 буферов размером 1 Кбайт каждый. -В, —auto-buffers По умолчанию, когда информация считывается из канала (конвейера), производится автоматическое выделение необходимого количества буферов. Опция -В отменяет автоматическое выделение и использует ко личество, указываемое опцией -Ь, хотя тго может привести к потере данных.
II. Команды 373 -с, —clear-screen Выполняет полную перерисовку экрана от верхней строки вниз. По умолчанию полная перерисовка экрана выполняется путем прокрутки от ни ia экрана. -С,-CLEAR-SCREEN Подобна опции -с, но вначале очищает экран. -d, —dumb Запрещает выдачу сообщений об ошибках, обычно возникающих на терминалах типа dumb (низкоуровневых, неинтеллектуальных). Обычно подобные сообщения касаются таких важных особенностей, как очистка экрана или обратный скроллинг (прокрутка). -е, —quit-at-eof Автоматически завершает выполнение программы при повторном достижении конца файла (EOF). По умолчанию для завершения программы существует команда q. -Е,-QUIT-AT-EOF Автоматически завершает выполнение программы при первом достижении конца файла (EOF). -f, —force Открывает также необычные файлы: к таковым можно отнести каталог или специальный файл устройства. Запрещает выдачу предупреждающего сообщения при открытии двоичных файлов. По умолчанию отказывается открывать такие файлы. -F, —quit-if-one-screen Автоматически завершает программу less, если весь отображаемый файл может разместиться на первом же экране. -g, —hilite-search Обычно less выделяет все строки, соответствующие последней команде поиска. Если задана опция -g, будет выделять лишь определенную строку. Это обычно делается для ускорения работы less. -G,-HILITE-SEARCH Запрещает выполнять выделение строк, найденных с помощью команд поиска. -гш, —max-back-scroll=n Указывает максимальное количество строк обратного скроллинга (прокрутки). Если терминал не в состоянии выполнить обратный скроллинг, устанавливается -hO. -i, —ignore-case В процессе поиска игнорирует регистр букв. Но эта опция игнорируется, если прописные буквы появляются в шаблонах поиска. I, -IGNORE-CASE Подобна опции -i, но игнорирует регистр букв даже в шаблонах поиска. -jn, —jump-target=n Указывает строку экрана, где позиционируется строк» цели. В качестве строки цели можно рассматривать объект текстового поиска, тег (jtii-
374 II Комаеды кетку) поиска, строку указанного номера и т.д. Строка экрана определи ется по номеру: верхней строке экрана присваивается номер 1, следующей строке - 2 и т.д. Номер может быть отрицательным числом, указывающим строку относительно низа экрана: нижней строке экрана присваивается номер -1, второй строке относительно низа - -2 и т.д. Если используется опция -j, поиск начинается со строки, следующей за целевой -k filename. —lesskey-file=/?/ena»ie Открывает и интерпретирует поименованный файл как созданный программой lesskcy. В этом файле описаны клавиши, используемые less. -m, —long-prompt Выводит подробное приглашение, как команда more, указывая процент просмотренной информации файла. По умолчанию в качестве приглашения команда less использует двоеточие. -М, - LONG-PROMPT Выводит даже еще более подробное приглашение, чем команда more. -n, —line-numbers Запрещает выводить номера строк, что может создавать определенные проблемы, так как номер отображается в подробном приглашении, в команде, а с помощью команды v номер текущей строки также передается редактору. -N, -LINE-NUMBERS Отображает номер в начале каждой строки, выводимой на дисплей. -ofilename, ~\og-fi\e=filename Копирует входной файл программы less в поименованный файл filename для последующего отображения. Эта опция имеет смысл, когда входная информация поступает по каналу (конвейеру). Если файл уже существует, less просит подтверждения перед его перезаписью. -О filename, ~LOG-FlLE= filename Опция -О подобна -о, но она перекрывает сушествуташий файл, не спрашивая подтверждения. -ppattern, —pattem=pattern Опция командной строки -р эквивалентна команде +у'pattern: предлагает less стартовать с первого появления указанного шаблона. -Pprompt, —prompt = prompt Предлагает три стиля приглашений на выбор пользователя. Эта опция обычно задается в переменной окружения LESS, где она должна стоять последней или завершаться знаком доллара. Опция -Ps, за которой следует строка, меняет короткое приглашение (по умолчанию) на эту строку. -Рт меняет среднее по формату приглашение. -РМ меняет длинное приглашение. -Ph меняет приглашение экранной помощи. -Р= меняет приглашение, распечатываемое командой =. -q, --quiet, --silent Работает в режиме "молчания": тонок терминала не звони г. ест икается попытка "перескочить" п процессе скроллинга за пределы файла.
II. Команды 375 Если терминал имеет "визуальный" звонок, он и будет использоваться вместо настоящего. -Q,-QUIET, -SILENT Работает в режиме полного "молчания": терминал никогда не издает звуковых сигналов. -г, —raw-control-chars Отражает низкоуровневые управляющие символы, используя формат с символом л. Могут возникнуть проблемы с отображением содержимого экрана: длинные строки, разделенные в неурочном месте и т.п. -R, -RAW-CONTROL-CHARS Работает подобно опции -г, но пытается, где это возможно, сохранить нормальный вид содержимого экрана. -s, —squeeze-blank-lines Заменяет несколько идущих подряд пустых строк на одну пустую, что полезно при отображении вывода nroff. -S, —chop-long-lines Встречая строки длиннее, чем ширина экрана, просто отбрасывает остаток. По умолчанию отображает остаток длинной строки на следующей строке. -tog, -tag = tag Редактирует файл, содержащий указанный тег (этикетку) lag. Чтобы это работало, в текущем каталоге должен быть файл по имени tags, предварительно построенный командой ctags. Эта опция может быть также указана внутри less с помощью команды -. -Ttagsfile, ~tog-f\le=tagsfile Указывает файл, используемый вместо файла tags (см. опцию -t). -u, —underline-special Рассматривает возврат на один символ и возврат каретки как распечатываемые символы, так что они направляются на терминал, если обнаруживаются во входном файле. -U, -UNDERLINE-SPECIAL Рассматривает символы табуляции, возврат на один символ и возврат каретки как управляющие символы; эти символы поддерживаются согласно опции -г. -V, —version Выводит информацию о версии less. -w, — hilite-unread Временно выделяет первую вновь появившуюся строку после постраничного движения вперед. Это выделение удаляется п следующей команде, инициализирующей движение. -W.-H1HTE-UNREAD Действует, как -w, но временно выделяет первую новую ст рок\ после любой команды, инициализирующей движение впере i более чем на одн\ строку.
376 II. Команды -хл, ~tabs=n Устанавливает шаг табуляции в и позиций, по умолчанию - 8. -X, —no-init Запрещает посылать на терминал инициализирующие и деинициализирующие строки termcap. -уи, — max-forw-scroll=H Указывает максимальное число строк скроллинга (прокрутки) вперед. -[z]n, —vvindo\v=n Меняет указанный по умолчанию размер окна скроллинга (прокрутки) на и строк, по умолчанию — один полный экран, при этом символ z может быть опущен для совместимости с командой more. Если число и отрицательное, то его модуль указывает разницу между текущим размером экрана и требуемым. -"ее, — quotes=cc Меняет открывающую и закрывающую кавычки соответственно на первый и второй символы параметра се. Это требуется для вызова файла, имя которого содержит пробелы и кавычки. —, —tilde Отображает строки после конца файла как пустые. Обычно строки после EOF отображаются в виде единственного символа ~. Отмечает конец опций командной строки; далее следуют аргументы, интерпретируемые как имена файлов. + Берет остаток этой опции, следующий за знаком плюс, в качестве начальной команды для less. Ко анды В командах приняты следующие обозначения: ЛХ означает Ctrl+X; некоторым командам также может предшествовать число N; символы -> обозначают правую стрелку клавиатуры, символы -< обозначают левую стрелку. h, H Выводит справку по командам. Пробел, AV, f, AF Выполняет скроллинг (прокрутку) на N строк вперед, по умолчанию - на одно окно. z Подобна команде f, но если задан параметр N, устанавливает новый размер окна. ESC+пробел Подобна команде f, но прокручивает полный экран, даже если в процессе отработки достиг нут EOF (конец файла). RETURN, AN, e, ЛЕ, j, AJ Выполняет прокрутку вперед на N строк, по умолчанию - на одну. d, AD Выполняет прокрутку вперед на N строк, по умолчанию - на полэкрана. Ь, ЛВ, ESC+v Выполняет обратную прокрутку на N строк, по умолчанию — на одно окно. w Выполняет обратную прокрутку на N строк, устанавливает новый размер окна (N строк).
II. Команды 377 у, AY, ЛР, к, ЛК Выполняет обратную прокрутку на N строк, по умолчанию - на одну строку. u, AU Выполняет обратную прокрутку на N строк, по умолчанию - на полэкрана. ESC-), RIGHTARROW Выполняет правосторонний горизонтальный скроллинг (прокрутку) на N символов, по умолчанию - на 8. ESC-(, LEFTARROW Выполняет левосторонний горизонтальный скроллинг (прокрутку) на N символов, по умолчанию - на 8. г, AR, AL Перерисовывает экран. R Перерисовывает экран, отбрасывая любой буферированный ввод. F Прокручивает вперед, пытаясь выполнить чтение, когда достигнут конец файла. g, <, ESC-< Идет к строке N, по умолчанию - к началу файла (первая строка). G, >, ESC-> Идет к строке N, по умолчанию - к концу файла. р, % Переходит на позицию, определяемую значением N - новым положением, выраженным в процентном отношении. { Если в верхней строке экрана появилась левая фигурная скобка, производит поиск правой фигурной скобки. Если в верхней строке имеется несколько фигурных скобок, можно задать число N, определяющее вложение конструкций. } Если в нижней строке экрана появилась правая фигурная скобка, производит поиск левой скобки в обратном направлении (к верхней строке). ( Подобна {, но ищет обычную круглую скобку. ) Подобна }, но ищет обычную круглую скобку. [ Подобна {, но ищет квадратную скобку. ] Подобна }, но ищет квадратную скобку. ESC+AF Подобна {. Рассматривает следующие два символа соответственно как открывающую и закрывающую скобки. ESC+AB Подобна}. Рассматривает следующие два символа соответственно как открывающую и закрывающую скобки. m Помечаеттекущую позицию любой следующей за командой буквой нижнего регистра. ' Отрабатывает одинарную кавычку. Любая следующая буква нижнего регистра возвращает к позиции, ранее помеченной этой буквой. Др> гая последующая одинарная кавычка возвращает к предшествующему месту. Следующий за кавычкой символ л или $ перемещает соответственно в начало и конец файла.
378 II Команды /pattern Производит поиск в прямом направлении Л'-ои сiроки, содержащей указанный шаблон pattern. По умолчанию N равно 1. Шаблон - это регулярное выражение, распознаваемое ed. Поиск начинается со второй отображаемой строки, если только опции -а и -j не поменяют этого. Некоторые символы, входящие в начало шаблона, рассматриваются как специальные, а не являются собственно частью шаблона: AN,! поиск строки, не совпадающей с шаблоном ЛЕ, * если в процессе поиска достигнут конец текущего файла, а указанный шаблон не найден, продолжает поиск в следующем файле, из перечисленных в командной строке AF, @ начинает поиск с первой строки первого файла из указанных в командной строке, невзирая на текущее отображение или установки опций -а и -j Л К вызывает любой текст текущего экрана, совпадающий с шаблоном, но держит текущую позицию, не возвращаясь к первому сопоставлению Л R выполняет обычное текстовое сравнение, не интерпретируя метасимволы регулярных выражений "[pattern Производит поиск в обратном направлении Л'-ои строки, содержащей указанный шаблон pattern. Поиск начинается со строки, предшествующей верхней отображаемой строке. Некоторые символы, как и в команде /, рассматриваются в качестве специальных: AN,! поиск строки, не совпадающей с шаблоном ЛЕ, * если в процессе поиска достигнуто начало текущего файла, а указанный шаблон не найден, продолжает поиск в предшествующем файле из указанных в командной строке, невзирая на текущее отображение или установки опций -а и -j Л К действует, как в прямом поиске л R действует, как в прямом поиске ESC+/pattern Действует так же, как /*. ESC+?pattern Действует так же, как ?*. п Повторяет предшествующий поиск для Л'-ои строки, содержащей последний шаблон. Очень существенно, как модифицировался предшествующий поиск: ЛЕ продолжается поиск в следующем или предшествующем файле, если в текущем файле не обнаружено совпадений Л N выполняется поиск Л'-ои строки, не содержащей шаблон Л R не использует регулярные выражения Не выполняет никаких действий, если предшествующий поиск модифицировался AF или ЛК. N Повторяет предшествующий поиск в обратном направлении. ESC+n Повторяет предшествующий поиск, пересекая границы тсьмцего файла.
II. Команды 379 ESC+N 11овторяет предшествующий поиск в обратном направлении, пересекая границы текущего файла. ESC+u Отменяет выделение текста строк, совпавшего с текущим шаблоном поиска. Если выделение текста уже было отменено предыдущей командой ESC+u, вновь включает его. :е [filename] Открывает новый файл filename. Если имя файла не задано, повторно загружает текущий файл. AXAV. E Действует подобно команде :е. :п Открывает N-ьш следующий файл из указанных в командной строке. По умолчанию открывает следующий файл. :р Открывает N-ый предшествующий файл из указанных в командной строке. По умолчанию - предыдущий файл. :х Открывает N-ый файл из указанных в командной строке. По умолчанию - первый файл. :d Удаляет из списка файлов имя текущего. =, AG, :f Печатает некоторую информацию об отображаемом файле: его имя, номер строки, смещение относительно нижней строки, длину файла, количество строк и процент отображенной информации. Меняет значение вслед идущей короткой опции и описывает новую установку. Подобна команде -, но работает с длинными опциями вместо коротких. -+ Переустанавливает вслед идущую короткую опцию в ее значение по умолчанию. --+ Подобна команде -+, но работает с длинными опциями. -! Переустанавливает вслед идущую короткую опцию в значение, противоположное принятому по умолчанию; описывает новую установку. —! Подобна команде -!, но работает с длинными опциями вместо коротких. _(подчеркивание) Описывает вслед идущую короткую опцию. Описывает вслед идущую длинную опцию. +cmd Запускает указанную команду ста" кажчый раз при загрузке нового файла. V Выводит информацию о версии less. q, О, :q, :Q, ZZ Завершает less. v Вызывает редактор, задаваемый переменной окружения VISUAL или EDITOR, для редактирования текущего файла. Если не определены обе эти переменные, вызывает vi. \crnd Вызывает оболочку для запуска команды ста". Если в комам че встретился символ %, он замещается именем текущего ф.шлп, если символ
380 II Команды # - именем предшествующего файла. Два символа!! повторяют последнюю команду оболочки. \<m>cmd Передает по конвейеру секцию текущего файла между первой строкой текущего экрана и позицией, отмеченной буквой т, заданной команде cmd. В качестве значения т можно также указать Л или $, что соответствует началу или концу файла. Если в качестве значения т определена точка или newline (символ новой строки), передает по конвейеру весь текущий экран. s filename Сохраняет входную информацию в файпе filename, что только работает, если в качестве входного файла используется канал, а не обычный файл. Пример На следующей странице на первом рисунке задается поиск в обратном направлении шаблона х58. На втором рисунке выделяется (см. первую строку) найденный сегмент строки. Используется стандартное приглашение less в виде двоеточия. = mishs@localhost.localdomain: /home/misha . 0x78: 91 92 93 94 95 124 121 0 Escaped scancodes eO xx (hex) eO 00: eO 08: eOlO: , eO 18: .eO 20: eO 28: eO 30: e0 38: eO 40: eO 48: e0 50: e0 58: ,e0 60: eO 68: ■ eO 70: eO 78: ?x58| 00000000 00000000 00000000 00009S97 00 00000000 00000000 00000 98 099 100 0 0 0 0 113 114 115 116 117 0 0 0 0 101 102 103 104 0 105 124 10G 118 107 108 109 110 111 0 0 0 0 0 0 0 125 126 127 0 0 00000000 0 0 0 0 0 0 0 112 00000000 00000000 Xl Л 1 1 / = friishe©localhostlocaldomeJn: /home/mishoj x i в , 0x60: 0x68: 0x70: 1 0x78: 88 124 125 126 127 0 0 0 00000000 0 0 0 0 0 122 0 123 0 0 089 120 0 090 91 92 93 94 95 124 121 0 Escaped scancodes eO xx (hex) eOOO: eO 08: | eO 10: eO 18: eO 20: eO 28: eO 30: Ie0 38: 1 eO 40: eO 48: i eO 50: eO 58: 00000000 00000000 0000000 С 000096 97 00 00000000 00000000 0000098099 100 0 0 0 0 113 114 115 116 117 0 0 0 0 101 102 103 104 0 105 124 106 118 107 108 109 110 111 0 0 0 0 0 0 0 125 126 127 0 0 Л 1 j 1 lilo инсталлир ет заг« зчик Linux. Синтаксис lilo [-C config_file] -q [-m map_file] [-v... ] lilo [-C config_file][-b boot_device] [-c] [-1|-L] [-i boot_sector) [-Ш map file]{-d delay] [-v...][-t][-в save_file\-S save_file\ (-P fix7-P ignore][-r rootdir] lilo [-C config_file\ [-m map_file\ -R [word...] lilo [-C config_file] -I name [option] lilo [-C config_file]]-B save_file] -u|-U [boot_device] lilo -V
II. Команды 381 Команда lilo инсталлирует загрузчик Linux под названием LILO, он также является boot-менеджером общего назначения, позволяя загружать из разных разделов жесткого диска другие операционные системы: MS DOS, OS/2, Windows95, Windows NT, BSD, UnixWare и т.д. Обычно инсталляцию LILO осуществляют во время инсталляции Linux. После старта LILO отображает приглашение boot: и ждет, когда пользователь введет имя загружаемого образа. Если он не отвечает некоторый период времени (значение хранится в файле /etc/lilo.conf), будет загружен образ, принятый по умолчанию (первый образ из /etc/lilo.conf). Если LILO применяется для загрузки Linux, можно указать одну или более опций option для передачи ядру Linux. В качестве опций, передаваемых ядру, могут быть указаны параметры дисковых контроллеров: адрес порта ввода/вывода, IRQ, DMA. Опции -С configjile Использует указанный файл в качестве файла конфигурации. По умолчанию - /etc/lilo.conf. -q Выводит список ядер операционных систем (не только Linux), которые можно загрузить. Список обычно хранится в файле /boot/map. -L error Предполагает, что будет загружен и запущен первый загрузчик. Код ошибки, состоящий из двух цифр, указывает разновидность проблемы. -m mapjlle Указывает альтернативный файл, содержащий список ядер операционных систем. -d delay Задает задержку в миллисекундах перед загрузкой первой операционной системы. -г root_dir Выполняет команду chroot, передавая ей в качестве аргумента заданный каталог, что необходимо при загрузке с гибкого диска в случае восстановления системы. -s savejile Сохраняет старое содержимое boot-сектора в указанном файле save- file (по умолчанию - в /boot/booU\WAW, где NNNN зависит от устройства), когда Шо перезаписывает boot-сектор. -1 Использует последовательные номера секторов (режим linear) вместо традиционного адреса сектор/дорожка/цилиндр. -i bootsector В качестве загрузочного сектора использует содержимое указанного файла booi_sector. -R word... Передает загрузчику командную строку word для последующей загрузки. -I пате Идентифицирует образ ядра, заданный меткой пате. -v Подробно информирует о происходящем. Задание двойной опции -vv увеличивает уровень информативности. -t Выполняет лишь тестирование, не записывая вновь созданный загрузочный сектор.
382 И Команды -с Совмещает несколько запросов чтения (из соседних секторов), что ускоряет процесс загрузки, но неприемлемо для дискет. -b boot device Устанавливает имя устройства, содержащего загрузочный сектор -Р {fix|ignore} Исправляет или игнорирует испорченную таблицу разделов. -S savejile Перезаписывает существующий файл, содержащий сохраненный загрузочный сектор, хотя обычно не делает этого. -u boot device Деинсталлирует LILO, восстанавливая ранее сохраненный загрузочный сектор, при этом проверяет временную метку. -U bootdevice Действует аналогично опции -и, не проверяя временных меток. -V Выводит информацию о версии программы. listres - отображает ресурсы виджета (widget). Синтаксис listres [option—] Программа listres создает список содержимого БД ресурсов виджета: класс, в котором был изначально определен ресурс, образец и имя класса, тип ресурса. Если не задан специальный переключатель -all, распечатывает в два столбца список имен вид- жетов и иерархий их классов. Виджет (widget) - это графический объект GUI (Graphic User Interface - графического интерфейса пользователя). Для Linux создано немало GUI: Enlightenment, KDE и др. Опции -all Распечатывает информацию о всех существующих виджетах и объектах. -nosuper He распечатывает ресурсы, унаследованные от суперкласса, что позволяет увидеть новые ресурсы подкласса. -variable Идентифицирует виджеты по переменным имен записей класса вместо имени класса, задаваемого в переменной, что позволяет выделить подклассы, имеющие то же самое имя класса, что их суперклассы. -top name Указывает имя виджета, рассматриваемого в качестве вершины иерархии; пате может совпадать либо с именем переменной класса, либо с именем класса. По умолчанию - core. -format printf-string Указывает стиль формата строки, используемого для распечатки имени, класса образца, i ипа каждого ресурса.
II. Команды 383 |П - создает ссылки на файлы. Синтаксис In [option] target (Ипкпаше] In [option] target directory В первом формате создает ссылку по имени linkname (необязательный аргумент) на файл target. По умолчанию In создает "жесткие" ссылки, а с опцией -s - символические ссылки. Если последний аргумент командной строки является именем существующего каталога, In создает ссылку на каждый файл target в этом каталоге. Если задано два имени файла, In создает ссылку со второго на первое имя. Если задан один аргумент target, In создает в текущем каталоге ссылку на этот файл. "Жесткая" ссылка - это просто другое имя существующего файла. И оригинал, и ссылка имеют тот же самый дескриптор. Пользователь не может создать жесткую ссылку на каталог. Кроме того, жесткая ссылка не может распространяться через границы файловой системы. В случае символической ссылки специальный тип файла ссылается на другой файл по имени. Большинство операций - открытие файлов, чтение, запись - передается на символическую ссылку, которую ядро автоматически распознает и поэтому манипулирует с файлом, на который указывает ссылка. Но некоторые операции, например удаление, выполняются собственно над ссылкой, а не над тем файлом, на который она ссылается. Опции -b method, —backup [=method] Создает резервные копии каждого файла, который будет перезаписан или удален. См. ниже описание параметра method. -d, -F, —directory Разрешает суперпользователям создавать жесткие ссылки на каталоги. -f, —force Удаляет существующие адресуемые файлы, на которые указывает ссылка. -i, —interactive Требует подтверждения, если приходится удалять существующий адресуемый файл. -п, —no-dereference Если явно заданный целевой объект в свою очередь является ссылкой на каталог, рассматривает этот объект как обычный файл. -s, —symbolic Вместо жестких создает символические ссылки. -S suffix, —suffix=suffix Использует указанный суффикс для имен файлов резериныч копий, создаваемых с помощью опции -I)
384 И Команды —target-directory=</i>ec/or)> Указывает выходной каталог. -v, —verbose Перед связыванием печатает имя каждого файла. -V method, — version-control=mef/ic«/ Меняет тип резервирования, выполняемый с помощью опции -Ь. Параметр method может принимать следующие значения: попе (или off) без копии numbered (или t) создает пронумерованные копии never (или simple) создает обычную копию existing (или nil) создает пронумерованную копию, если уже существуют пронумерованные копии, в противном случае создает обычную копию. По умолчанию в качестве суффикса при создании резервных копий применяется символ @. П • име • $ In -s /rab/person/hhh $ В текущем каталоге создает hhh - ссылку на /rab/person/hhh. S Is -1 hhh lrwxrwxrwx 1 misha misha 15 c+- 6 20:27 hhh -> /rab/person/hhh $ loadkeys - загружает таблицы трансляции клавиатуры. Синта с loadkeys [-dl[-h][-q](-v[-v]1[-m][-с)[-si[filename...] В Linux драйвер клавиатуры анализирует таблицу клавиатуры, чтобы установить, в какие коды следует транслировать нажатую клавишу или какое действие она вызывает. Таблица трансляции клавиатуры предоставляется в виде текстового файла. По умолчанию в Red Hat Linux 7.0 таковым является defkeymap.map из каталога /usr/src/linux/drivers/char. Программа loadkeys считывает файлы, указанные аргументом filename; если имя файла не определено или в качестве имени стоит дефис, считывает содержимое стандартного ввода. Другие таблицы отображения клавиатуры можно отыскать в каталоге /usr/Iib/kbd/keymaps/i386/qwerty. Таблица клавиатуры, например для Финляндии, хранится в файле fi.kmap.gz. Опции -h, —help Печатает информацию и версии программы и завершает ее работу, -v, —verbose Печатает подробности проведенных изменений, -q, —quiet Подавляет вывод стандартных сообщений.
II. Команды 385 -с, — clearcomposc Очищает скомпонованную таблицу ядра. Если эта опция не указана и заданный файл не содержит никаких сформированных определении клавиш, таблица ядра остается неизменной. -s, —clearstrings Очищает строку таблицы. Без этой опции только добавляет или замещает строки, но не удаляет их. -d, —default Возвращает заданную по умолчанию таблицу. -m, —mktable Переводит программу в режим интерактивного приема вводимой информации, задающей новые назначения клавиш (см. Примеры). Завершая ввод, следует нажать Ctrl+D. В результате loadkeys печатает на стандартный вывод файл, который может быть использован в качестве /usr/src/linux/drivers/char/defkeymap.c, указывающего взятые по умолчанию привязки клавиш. Но модификация текущей таблицы не выполняется. Примеры Предположим, вы хотите поменять отображение двух клавиш. Скажем, вам требуется, чтобы символ а интерпретировался как z, и наоборот. Для этого наберите в приглашении оболочки следующее: $loadkeys keycode 44=+a keycode 30=+z Ctrl+D $ Теперь перейдите в текстовую консоль, так как эта процедура не работает под X, набрав, например Ctrl+Alt+F3. А сейчас можете экспериментировать: нажав на клавиатуре а, будете получать z, и наоборот. Предположим, вам потребовалось загрузить раскладку, принятую в Финляндии. Для этого наберите такую команду: $ loadkeys /usr/lib/kbd/keymaps/i386/qwerty/fi.kmap Loading /usr/lib/kbd/keymaps/i386/qwerty/f i.kmap.gz S А теперь попробуйте набрать привычный символ Л (над цифрой 6 в верхнем регистре) - получите &; вместо знака минус возникает плюс и т.д., работает новая таблица отображения клавиатуры. Чтобы вернуться к установленной по умолчанию таблице, достаточно ввести простую команду: $ loadkeys -d Loading /usr/lib/kbd/keymaps/i386/qwerty/deikeymap.kmap.gz $ Все вновь вернулось "на круги свося". I
380 II Команды lOCStG - запускает GNU-версию программы locate, обеспечивающую быстрый поиск файлов системы. Синтаксис slocate I-qi][-d path][—database=pat/i] search-string slocate [-i][-r regexp] [—regexp=regexp] slocate I-qv][-o file][—output=fi'e] slocate [-e dirl,dir2...][-f fstypel...][-1 ierei][-c][-U patA][-u] slocate |-Vh][—version]I—help] GNU-версия locate предлагает безопасный способ индексации и быстрого поиска файлов в вашей системе. Чтобы ускорить поиск файлов, используется специальное кодирование, сжимающее базу данных программы slocate. В БД также хранится информация о полномочиях на файлы и их владельцах, поэтому пользователи могут увидеть лишь те файлы, которые им доступны. GNU-версия программы locate называется slocate. Опции -и Создает БД программы slocate, начиная с каталога /. -U path Создает БД программы, начиная с каталога path. -о file, ~output=fiIe Указывает создаваемую БД. -d path, — database=pa(/i Определяет маршрут поиска базы данных. -h, —help Выводит список опций slocate. -v, —verbose При создании БД отображает ее файлы. -V, —version Выводит информацию о версии программы slocate. -е dir\,dir2... Исключает перечисленные каталоги из БД при использовании опций -и и-Ь. -f fstypeX... Исключает файлы перечисленных файловых систем из БД при использовании опций -и и -U. "с Анализирует содержимое /etc/updatcdb.conf при использовании опций -и и -U. -I level Устанавливает уровень безопасности: 0 - отключает проверку безопасности, а 1 - включает по умолчанию. -1 Производит поиск, не зависящий от регистра. -q Запрещает выдачу сообщений об ошибках. -п пит Ограничивает число выводимых результатов
II. Команды -г regexp, -regexp=regeAy> При поиске использует базовое регулярное выражение POSIX Пр чмер $ slocate -qi diet /usr/bin/gdict /usr/dict /usr/include/linuxconf/dictionary, h /usr/include/pythonl.5/dictobject.h /usr/lib/cracklibdict. hwm /usr/lib/cracklib_dict.pwd /usr/lib/cracklib_dict.pwi /usr/lib/perl5/5.6.0/Search/Dict.pm /usr/lib/pythonl. 5/UserDict. py /usr/lib/pythonl. 5/UserDict. рус /usr/lib/pythonl. 5/UserDict. pyo /usr/lib/pythonl.5/test/output/test_userdict /usr/lib/pythonl. 5/test/test_userdict.py /usr/lib/pythonl.5/test/test_userdict.рус /usr/lib/pythonl.5/test/test_userdict.pyo /usr/lib/linuxconf-devel/templates/_dict.ee /usr/lib/qt-2.2.0/include/qasciidict.h /usr/lib/qt-2.2.0/include/qdict.h /usr/lib/qt-2.2.O/include/qgdict. h /usr/lib/qt-2.2.0/include/qintdict.h /usr/lib/qt-2.2.0/include/qob jectdict. h /usr/lib/qt-2.2.O/include/qptrdict.h /usr/lib/qt-2.2.O/include/qwidgetintdict.h /usr/lib/qt-1.45/include/qdict.h $ lockfile - создает файл-семафор. Синтаксиъс lockfile -sleeptime|-r retries|-l locktimeout\-s suspend\-l|-ml| -mu| filename Может быть использована для создания одного или более файлов-семафоров. Если lockfilc не может создать все указанные файлы filename в заданном порядке, переходит в состояние ожидания, а затем вновь повторяет попытку создания последнего файла, ранее завершившуюся аварийно. Все флаги могут быть указаны в любом месте командной строки, lockfilc просто анализирует их слева направо. Опции -sleeplime Указывает время ожидания в секундах, по умолчанию - 8 секунд. -г retries Задает количество попыток создания файла-семафора (lock-файла'). Если retries равно -1 (-г-1), повторяет попытки создания сколь угодно долго. Если заданное количество попыток исчерпано до создания все\ требуемых файлов, аварийно завершается, удалив все созданные до того файлы.
388 II Команды -1 locktimeout Удаляе г lock-файл через указанное число секунд после последней модификации (создания). -s suspend Приостанавливает удаление lock-файла (см. опцию -г) на указанное suspend количество секунд, по умолчанию - на 16 секунд. Что иногда необходимо, если уже созданный файл-семафор используется другой программой, но в дальнейшем будет удален. -! Облегчает использование lock-файлов в качестве условий цикла в сценариях оболочки, инвертируя статус завершения. -ml Блокирует ваш системный почтовый ящик, если полномочия на системный каталог почтового спула позволяют это. -mu Разблокирует ваш системный почтовый ящик. Все файлы, созданные lockfile, могут быть использованы лишь в режиме чтения. lOQCjGT - создает элементы в заданном системно к журнал-. Синтаксис logger [-isd] [-f file] [-p pri] [-t tag] I-u sock] [message ] syslog - это фактически действующий механизм регистрации в Unix. Он впервые появился в BSD 4.2 в начале 80-х годов XX века и впоследствии входил в состав всех последующих реализаций Unix. Подобно многим другим компонентам Unix, syslog основан на архитектуре "клиент-сервер". При этом клиент предоставляет серверу syslog журналы регистрации (они могут находиться на той же машине), а сервер может записывать в эти журналы либо уведомлять иными способами системных администраторов. logger - командный интерфейс к модулю регистрации системы syslog, позволяющий записывать сообщение message в требуемый журнал. Ядро Unix и большинство приложений, выполняющих регистрацию посредством syslog, используют специальное устройство регистрации, скажем /dev/log). Этот механизм регистрации не так-то просто использовать в сценариях командного процессора, поэтому приходится прибегать к команде logger. Эта команда позволяет указывать приоритет журнала с помощью флага -р. Она принимает сообщение из командной строки или стандартного ввода, а затем направляет его через syslog по соответствующему назначению. Системные журналы (или журналы регистрации) -лучшие помощники системного администратора, в них хранится предыстория (протокол) работы каждой системы, службы и сети в конкретной инфраструктуре. Существует множество видов журналов, при этом в каждой операционной системе и в каждом приложении регистрация информации осуществляется по-разному. Наиболее распространенной формой журналов в Unix является файл регистрации. Это простой текстовый файл, к которому система или приложение добавляет сообщения. Большинство правильно построенных ж\ риалов содержат дату и время формирования каждого такого сообщения, имя приложения, создавшего это сообщение, а также подробное описание произошедшего события.
II. Команды 380 Опции _i Регистрирует идеи гнфикатор logger-процесса в каждой строке. -s Помимо системного журнала также выводит сообщение в стандартный файл ошибок, -f file Регистрирует текст сообщения из указанного файла, -р pri Фиксирует сообщение с заданным приоритетом {priority). -t tag Помечает каждую строку в журнале заданным тегом. -u sock Вместо встроенных подпрограмм syslog использует для записи указанный сокет. -d Использует дейтаграмму вместо потокового подключения к заданному сокету. Завершает список аргументов, что позволяет начинать сообщение message с дефиса. Не все журналы регистрации в syslog равноценны. Каждому журнальному сообщению присваиваются facility (особенность) и level (уровень), а в комплексе это называется priority (приоритетом). Особенность указывает тип события, на которое делается ссылка в журнале регистрации, в частности, информация по аутентификации, диагностика электронной почты, сообщения из ядра операционной системы либо специальное сообщение из приложения. К сожалению, системные администраторы не могут самостоятельно формировать упомянутые особенности, но в Unix распределены ключевые слова для определения некоторых из них. Наиболее распространенные особенности приведены в следующей таблице. В ней также даны примеры программ, использующих эти особенности для регистрации. Особенность Используется user пользовательскими процессами (принято по умолчанию) kem ядром Unix mail приложением электронной почты (sendmail) daemon системными демонами (named, ftpd) auth или authpriv системой аутентификации (login, su) cron подсистемами стоп и at localO-7 зарезервирована для локального применения * символ подстановки для обозначения любой особенности Особенности разделяются по уровням. Уровень журнального сообщения определяется его срочностью. Таким образом уровни могут быть использованы для проведения различия между срочными и информационными сообщениями. Так. сообщение, связанное с Telnet, может считаться информационным, а сообщение о сбое чис- ка - срочным. Предопределенные уровни syslog приведены в следующей таблице (перечислены в порядке убыпания пажпост и).
390 II Команды Уровень Описание emerg аварийные ситуации alert действия, требующие непосредственного внимания crit критические условия err любые ошибки иного рода warning предупреждающие сообщения notice неошибочные условия info информационные сообщения debug отладочные сообщения попе нерегистрируемая особенность Для получения журналов на машине должен быть запущен сервер syslog, обычно называемый syslogd. В большинстве стандартных реализаций syslogd конфигурируется путем редактирования файла /etc/syslog.conf, состоящего из пар селекторов и действий. Селектор - это текстовое представление приоритета в файле syslog.conf. Он образуется путем объединения особенности и уровня, разделяемых точкой. Так, журнал с особенностью auth и уровнем info будет иметь селектор auth.info. Селектор используется для выбора действия, которое следует выполнить в отношении конкретного сообщения. В качестве действия можно указать файл для регистрации сообщений, имена пользователей, которым будут направлены широковещательные сообщения, адрес дистанционного сервера. В одной строке одному действию могут соответствовать несколько селекторов (через точку с запятой), но также и одному селектору могут соответствовать несколько действий при добавлении в файл /etc/syslog.conf ряда строк с одним и тем же селектором. П имеры I logger -p daemon.info "Shutting down Web-server" Ctrl+Z t В результате выполнения этой команды в файле регистрации (здесь /var/log/mcs- sages) появилось такое сообщение (о закрытии Web-сервера): Sep 16 16:35:52 localhost root: Shutting down Web-server Следите за необычными системными сообщениями в журнале /vaiVlog/mcssagcs. операционная система регистрирует оснопную часть своей информации в этом файле! А вот так можно привязать к одному селектору два действия, добавив следующие строки в файл /etc/syslog.conf: authpriv.» /var/log/secure authpriv.» eiogserver.auth.com Помимо файла /var/log/securc сообщения будут регистрирования и на сервере @logscrver.auth.com.
II. Команды 391 lOQin - регистрирует пользователей в Linux К. login [username] login -p login -h host login -f name Команда login разрешает вход в систему Linux, регистрируя пользователей. Если в командной строке не указано имя пользователя username, предлагает ввести его, а затем, как правило, потребует еще и пароль. Команда выполняет некоторые административные действия и уведомляет пользователя, если его ждет почта. Команда login использует файл /etc/securetty и проверяет, где (на каком терминале) пытается зарегистрироваться привилегированный пользователь, или суперпользователь. Опции -f name Пропускает вторую аутентификацию при регистрации. Эта опция не работает для суперпользователя. -h host Передает через login имя дистанционного узла; используется серверами и устанавливается суперпользователем. -р Сохраняет предшествующее окружение, используемое gctty. 10С|П31Т16 - печатает имя пользователя, вызвавшего эту К команду. Синтаксис logname [option] Для нахождения имени используется файл /уаг/гип/ихтр.Если в этом файле отсутствует элемент для вызывающего процесса, logname печатает сообщение об ошибке и завершается с кодом I. Опциь —help Выводит описание опций программы и завершает ее. —version Выводит информацию о версии программы и завершает ее. Пример $ logname misha $
392 II Команды lOCjrOTSte выполняет ротацию, сжимает и отправляет по почте системные журналы. Синтаксис logrotate [-dv] [-f | —force] I-в | —state file] [-ш| —mail command] config_file+ logrotate - это программа общего типа, способная периодически сменять любой журнал регистрации. В Red Hat Linux программа logrotate выполняется как ежедневное задание cron для сопровождения журналов этой операционной системы, но лишь немногие могут воспользоваться logrotate для управления журналами своих приложений. Наблюдение и уход за каждым файлом регистрации, или журналом, могут осуществляться в автоматическом режиме ежедневно, еженедельно, ежемесячно, а также, когда журнал станет чрезмерно большим. В процессе ротации журналов необходимо учитывать особенности работы с открытыми файлами. Многие приложения, в том числе и syslog, всегда сохраняют файлы регистрации в открытом состоянии вместо того, чтобы открывать и записывать в них данные по требованию. Благодаря этому сводятся к минимуму издержки на обработку таких файлов, и упрощается сам процесс регистрации, ибо файлы не нужно открывать и закрывать для записи каждого журнального сообщения. Но вместе с тем, если файл регистрации остается постоянно открытым, он не может быть полностью сменен, поскольку все еще сохраняется процессом регистрации в открытом состоянии для записи журнальных сообщений. Большинство программ, открывающих файлы регистрации, предоставляют также возможность закрывать и повторно открывать такие файлы. В частности, утилита syslog повторно открывает файлы регистрации при посылке ей сигнала HUP. Если бы такая возможность отсутствовала, процесс регистрации пришлось бы останавливать для ротации журналов, а затем перезапускать, что неприемлемо в условиях производства, кроме разве что периодов технического обслуживания, когда большинство служб временно не работают. Информация, относящаяся к каждому журналу и правилам его ротации, по умолчанию хранится в файле конфигурации под названием /etc/logrotate.conf. Чтобы сохранить промежуточное состояние между запусками, logrotate сохраняет время последней ротации каждого журнала в файле состояния, в Red Hat Linux он носит имя /var/ lib/logrotate/status. Файл состояния гарантирует, что logrotate не будет выполнять смену журналов чаще одного раза в день, чтобы системный администратор не сделал это случайно еще раз. Любое количество конфигурационных файлов configJile+ может быть задано в командной строке. Содержимое предшествующих файлов конфигурации может быть перекрыто содержимым последующих файлов, поэтому порядок перечисления фан- лов является важным. Если в командной строке задано имя каталога, каждый файл в этом каталоге используется как конфигурационный. Часто один файл конфигурации включает другие конфигурационные файлы.
II. Команды 393 Опции _d Включает режим отладки и подразумевает опцию -v. В режиме отладки никакие изменения не могут быть произведены с журналами или же с файлом состояния программы logrotatc. -f, —force Заставляет выполнять ротацию даже без особой необходимости. -m, —mail command Сообщает logrotatc, какую команду command использовать при отправке по почте журналов. Эта команда сможет принять два аргумента: тему сообщения и получателя. Данная команда затем должна считывать сообщение со стандартного ввода и отправить его получателю. По умолчанию используется команда /bin/mail -s. -s, — state file Вынуждает logrotatc вместо /var/Iib/logrotate/status использовать альтернативный файл состояния. —usage Печатает короткое сообщение по применению опций. Что касается опций, применяемых в файле конфигурации по имени /etc/ logrotate.conf, то они могут быть глобальными или специфичными для индивидуального файла регистрации. В частности, глобальные опции перечисляются непосредственно в отдельных строках, тогда как индивидуальные опции файлов регистрации указываются следующим образом: путь_к_файлурегистрации { опции } Вот некоторые из наиболее употребительных опций: daily|weekly|monthly Определяет периодичность ротации журналов compress (nocompress) Сжимает (или не сжимает) сменяемые журналы с помощью команды gzip create \режим\[владелец~\[группа\ Создает новый файл регистрации после ротации; права собственности и полномочия являются необязательными параметрами include маршрут Включает директивы из другого файла конфигурации или каталога конфигурационных файлов rotate пит Определяет число (пит) сохраняемых архивных файлов size=num[k|m] Выполняет ротацию файлов регистрации, когда журнал достигает указанного размера (пит) в килобайтах (к) или мегабайтах (т) prerotate ... endscript Запускает команды оболочки, указываемые между операторами prerotate и endscript, до ротации журнала
394 II Команды postrotate ... endscript Запускает команды оболочки, указываемые между операторами postrotate и endscript, после ротации журнала Ротация журналов обычно осуществляется в зависимости от их размера или "возраста". Выбор одного из этих критериев для периодической смены файлов регистрации определяется доступным дисковым пространством и принятыми правилами сохранности журналов. Если первостепенное значение имеет дисковое пространство, ротация журналов должна выполняться в зависимости от их размера, что позволяет постоянно поддерживать предсказуемое количество журналов регистрации. С другой стороны, принятые правила сохранности требуют хранить архивы журналов в течение нескольких месяцев или даже лет. В этом случае ротацию файлов регистрации следует выполнять в зависимости от срока их действия, а число сохраняемых журналов установить согласно принятым правилам, позволяющим соблюсти хронологию ведения журналов регистрации. Журналы регистрации, которые не разрастаются и периодически не сменяются, будут оставаться небольшими по размеру, но в то же время в них будет содержаться устаревшая информация, тогда как журналы, которые быстро разрастаются, зачастую содержат больше информации, чем нужно для работы. Эти соображения наряду с дисковым пространством и правилами сохранности следует принимать во внимание при выборе критериев ротации журналов. Упомянутые подходы можно всегда реализовать в определенной комбинации, в частности, выполнять периодическую смену файлов регистрации, если их размер превышает 50 Мбайт либо срок действия составляет более двух месяцев. Пример Несмотря на многочисленные опции утилиты logrotate ее главная сила заключается в файле конфигурации. Принятая по умолчанию конфигурация хранится в файле /etc/ logrotate.conf и выглядит примерно так: # see "man logrotate" for details # rotate log files weekly weekly # keep 4 weeks worth of backlogs rotate 4 I create new (empty) log files after rotating old ones create # uncomment this if you want your log files compressed fcompress # RPH packages drop log rotation information into this directory include /etc/logrotate.d # no packages own wtmp — we'll rotate them here /var/log/wtmp { monthly create 0664 root utmp rotate 1 } # system-specific logs may be also be configured here.
II. Команды 395 Как можно заметить, такие стандартные журналы из каталога /var/log, как menage» и maillog, вообще не упоминаются в файле конфигурации logrotate.conf, хотя они всегда подлежат ротации. Конфигурации для этих и ряда других журналов содержатся в файлах из каталога /ctc/logrotatc.d и присоединяются к основному файлу конфигурации с помощью директивы include /ctc/logrotatc.d. IOOK - отображает строки, начинающиеся с указанных префиксов. Си т кси look [-dfa][-t termchar] string [file] Утилита look отображает любые строки файлаУ?/е, содержащие в качестве префикса string. Так как look выполняет двоичный поиск, строки файла должны быть предварительно отсортированы, причем команда sort должна получить те же самые опции -d и/или -f, что и look. Если аргумент file не указан, используется файл /usr/dict/words, сравниваются только алфавитно-цифровые символы, а регистр символов игнорируется. Опции -d Сравнивает только алфавитно-цифровые символы, использует набор алфавитных символов и порядок их следования, как в словаре. -f Игнорирует регистр символов алфавита. -а Использует альтернативный словарь (обычно /usr/dict/wcb2). -t termchar Указывает символ, завершающий префикс. Будет производиться сравнение символов, входящих в состав string, до первого появления termchar. Утилита look завершается с кодом 0, если была найдена и отображена одна строка или более, с кодом 1, если не была обнаружена ни одна подходящая строка, и с кодом более, чем 1, если возникла какая-нибудь ошибка. Пример % look -df bess Bess Bessel Bessemer Bessemerize Bessemerizes Bessie %
II Команды lOSGtllp - связывает loop-устройства с обычными файлами или блочными свойствами. Синтаксис losetup [-e encryption]l-o offset] loop_device file losetup [-d] loop_device Команда losetup применяется, чтобы установить или отсоединить loop-устройства, а также показать их статус. Если задан единственный аргумент loopjdevice, будет выведен статус соответствующего устройства. loop-устройства (или loopback-устройства - контурные устройства) в Linux позволяют манипулировать целой файловой системой внутри одного большого файла file. Поскольку большинство из пользователей не имеет запасного компьютера или жесткого диска (а иногда и лишнего раздела) для тестирования и опробования разных (подчас опасных) команд, мы можем создать файл с образом требуемой файловой системы и монтировать ее, используя файловую систему типа Ioopback (по типу контура обратной связи, или шлейфа, для кольцевой тестовой проверки) - специальную файловую систему, позволяющую реализовать эту возможность. Опции -d Отсоединяет файл, или устройство, связанное с указанным loop-устройством. -е encryption Разрешает шифрование данных, в качестве encryption применяются следующие ключевые слова: NONE не использует шифрование (по умолчанию) XOR использует простое XOR-шифрование DES использует DES-шифрование, защищающее пароли от словарных атак; в ядро должен быть добавлен необязательный пакет DES -о offset Стартует данные со смещением offset внутри заданного файла, или устройства. Пример Прежде всего создадим файл объемом 40 Мбайт с блоками размером в 1024 байт, для этого понадобится 40000 блоков размером I Кбайт (1024 байт): I dd if=/dev/zero of=/tmp/lutest.img bs=1024 count=40000 40000+0 records in 40000+0 records out I А сейчас с помощью команды losetup нужно сделать так, чтобы вместо ASCII- файла система рассматривала данный файл в качестве блочного устройства: I losetup /dev/loopO /tmp/luteet.img i
II. Команды 397 В файловой системе ReiserFS (тоже с журналированием) небольшие файлы поддерживаются более эффективно, чем в ext3. И хотя она пригодна для исполыования в качестве корневой файловой системы, официально Red Mat Linux такую возможность не поддерживает. Совсем другое дело дистрибутивы SuSE и Mandrake, поддерживающие загрузку с файловой системы ReiserFS. И вот теперь с помощью команды mkreiserfs можно форматировать данный файл как файловую систему: t mkreiserfs /dev/loopO < mkreiserffi, 2002 > reiserfsprogs 3.6.4 mkreiserfs: Guessing about desired format.- mkreiserfs: Kernel 2.4.20-8 is running. Format 3.6 with standard journal - управля-т принтерам. Синтаксис lpc [-A] [-a][-udebuglevel] [-Pprinter] [-Sserver] [-Vusername] [-V] {command [argument...]] Команда lpc используется администратором системы для управления системой построчной печати. Для каждого сконфигурированного устройства построчной печати (элемент в файле /etc/printcap) может выполнять следующее: D активизировать или деактивизировать принтер D активизировать или деактивизировать очередь печати (spooling) принтера D изменять порядок заданий в очереди печати D определять состояние принтеров и связанных с ними очередей и демонов печати Запущенная без аргументов, lpc приглашает для набора команд со стандартного ввода; если же заданы аргументы argument, интерпретирует первый из них как команду, а остальные - в качестве ее аргументов. Можно выполнить переназначение стандартного ввода, заставляя lpc считывать команды из файла. Опции -А Использует для аутентификации значение переменной окружения AUTH. -а Эквивалентно -Pall. -Pprinter Устанавливает очередь спула печати (all - все очереди), чтобы манипулировать ею. Если printer (или printer((6.host) не задан, нспольлет при выборе принтера переменную окружения PRINTER или первый цемент файла printcap. -Sserver Посылает команды этому серверу. -V Печатает информацию о версии программы.
398 II Команды -Vusername Считает, что запрос поступил от пользователя useniame -Ddebuglevel Устанавливает уровень отладки. Команды ? [command...], help [command...] Печатает краткое описание каждой команды, указанной в списке аргументов; если ни один аргумент не задан, печатает список доступных команд. abort {all \printer] Немедленно прекращает работу активного демона спула печати на локальном узле, а затем отключает процесс печати для всех (all) или указанных принтеров printer, запрещая стартовать новым демонам печати. active [pr@[host]] Подключается к серверу LPD ради указанного принтера. clean {a\l\printer} Удаляет из всех (all) очередей печати или очереди указанного принтера локальной машины любые вре'менные файлы, файлы данных и управляющие файлы. client {all | printer ...} Распечатывает клиентскую конфигурацию и информацию printcap на локальной машине. debug {a\\\printer} [string\off] Устанавливает отладочную строку string (общий уровень отладки, переменную отладки или ключевое слово) для указанного принтера printer. defaultq Вносит в список для программы LPC принятую по умолчанию очередь. defaults Вносит в список принятые по умолчанию значения конфигурационной информации. disable {all \printer] Отключает очереди печати для всех (all) или указанных принтеров. down {a\\\printer} message... Отключает очереди печати для всех (all) или указанного принтера, останавливает процесс печати и кладет сообщение message в файл состояния принтера. Сообщение message можно не заключать в кавычки. enable {all |p/inter} Открывает локальную очередь печати (spooling) для всех (all) или перечисленных устройств printer. Дает возможность Ipr поместить новые задания в очередь печати. exit, quit Завершает Ipc. hold primer{jobid) Задерживает в очереди указанного принтера printer задание jobiJ. holdall {a\\\printer} Устанавливает автоматическую задержку новых задании.
II. Команды 399 kill {all|priji/er ...} "Убивает" сервер, на котором возникли проблемы. lpd [printer(d>,[host]] Получает РШ демона LPD на принт-сервер. Ipq printer [options] Запускает Ipq из lpc. Iprm printer jobid \jobid] Запускает Iprm из lpc. move printer {jobid} destinationPrinter Пересылает указанное задание jobid на дистанционный принтер destinationPrinter и удаляет его при этом из очереди принтера printer. msg printer message text Обновляет сообщение состояния для указанного принтера. noholdall {a\l\printer} Отключает автоматическую задержку новых заданий. redirect [printer[destinationPrinter\off]] Перенаправляет задания из очереди принтера printer на другой принтер destinationPrinter или отключает возможность пересылки. redo [printer\jobid]] Перепечатывает выбранное задание jobid. release [printer\jobid]] Освобождает для печати заданиеуоЫс?, ранее задержанное с помощью команды hold. reread [printer[@host]] Посылает запрос на сервер дистанционного узла host, чтобы перечитать конфигурационную информацию и файл printcap для принтера printer. restart {al\\printer} Пытается запустить новый демон печати. Это приходится делать, когда очередной демон завершил свою работу в силу каких-либо аварийных условий. Программа Ipq обычно информирует об отсутствии демонов печати. Суперпользователь может вначале завершить работу текущего демона печати, а затем запустить новый. server {all \printer} Печатает элементы printcap для указанного принтера так, как сервер LPD использовал бы их. start {a\\\printer} Запускает печать и демона очередей печати для ncex (all) или перечисленных принтеров printer. status \a\\\printer} Отображает состояние демоноп и очереден печати локальной машины.
II Команды stop \a\\\prinler} Останавливает демона очереди печати после выполнения текущего задания и останавливает печать. topq printer [jobmtm...] [user...] Помещает задания jobnum пользователя user в начало очереди печати указанного принтера printer. up {a\\\printer} Эта команда противоположна команде down: включает спул (очередь печати) и запускает демон печати, сочетая действия команд enable и start. Пример На обычной системе команда Ipc status может отобразить следующее: t lpc status lp: queuing is enabled printing is enabled no entries no daemon present * Здесь показано состояние принтера по имени 1р (по умолчанию). Слово daemon (демон) в последней выведенной строке относится к фоновому процессу Ipd. Содержимое последней строки - no daemon present (в настоящее время демон отсутствует) - не должно вас волновать, так как демон, управляющий очередью печати, "уходит", если каталог спула пуст, но всегда остается экземпляр демона принтера под названием Ipd. ipa - демон по -тройной печати. Синтаксис ' Ipd [-FV][~blogfile]l-Ddebugopt] Копия Ipd обычно имеется в системе, ведь этот демон запускается еще в процессе загрузки системы. Лишь суперпользователь может запустить Ipd, если его по какой- либо причине нет в системе. После того как Ipd получает сигнал о наличии задания в очереди печати указанного принтера, он просматривает файл /ctc/printcap, чтобы установить, принадлежит ли принтер вашей или другой системе (дистанционный принтер). Во втором случае локальный Ipd установит связь с дистанционным Ipd и начнет передавать ему файлы лля печати, параллельно удаляя их из своего спула печати. Если принтер подключен к вашей системе, то Ipd проверит, не запущен ли уже демон печати для данной очереди. Если нет, то Ipd создаст копию самого себя, которая перешлет задания из очереди печати на принтер. Если вы инсталлировали Red Hat Linux, ваша система должна содержать каталоги спулов в /var/spool. Обычно в Unix в каталоге /viir/sponl хранятся очереди для мно-
II. Команды 401 гих программ - электронной почты и новостей. Катало1 и спулов печати располагаются в /var/spooMpd, каждый тип принтера имеет свой собственный спул-каталог. Опции -L logfile Использует альтернативный файл для регистрации ошибок и сообщений отладки. -F Определяет запуск сервера LPD в режиме переднего плана. -V Печатает информацию о версии программы. -D debugopt Принимает разделяемый запятыми список отладочных установок в двух формах: facility=value или value, чтобы установить всеобщие значения по умолчанию. Призер Данная команда позволяет установить наличие демона Ipd в вашей системе: $ ps ах | grep lpd 419 ? SW 0:00 [lpd] 1690 pts/0 S 0:00 man lpd 1833 tty2 S 0:00 grep lpd S ■РЦ - проверяет очередь печати. Синтаксис lpq [-a][-A][-l][-L][-P printer] I-s][-t sleeptime] [-V] [-D debugopt] [jobt...] Программа Ipq анализирует область спула, используемую Ipd для печати файлов на устройствах построчной печати. Аргумент/oW может быть именем пользователя, идентификатором задания, номером задания или базовым шаблоном замещения, прилагаемым к идентификаторам заданий. Ключевое слово all (по умолчанию) отображает все задания. Вызванная без аргументов команда Ipq сообщает о заданиях, находящихся в очереди печати. Оп ии -а Заставляет сервер информировать о всех принтерах, упомянутых в printcap. -А Использует для аутентификации значение переменной окружения AUTH. -Ddebugopt Принимает разделяемый запятыми список отладочных установок в дв> х формах: facility=value или value, чтобы установить всеобщие значения по умолчанию. -1 Выводит информацию по заданиям /о/>#. -L При выводе информации устанавливает максимально подробный уровень.
402 II Команды -Vprinter Указывает определенный принтер. В противном случае используется заданный по умолчанию (или переменной окружения PRINTER) принтер Все остальные аргументы командной строки интерпретируются как имена пользователей user или номера заданий, представляющих интерес. -s Для каждой очереди печатает только итоговую строку состояния. -tsleeptime "Спит" между проверками очередей sleeptime секунд. -V Печатает информацию о версии программы. Пример Если вы ошибочно запустили печать большого файла и хотите остановить этот процесс, чтобы не переводить зря бумагу, можно воспользоваться командой Ipq, чтобы просмотреть текущие задания печати. S Ipq lp is ready and printing Rank Owner Job Files Total Size active misha 5 dfssdi 28652 bytes $ В настоящее время печатается задание (active в первом столбце) пользователя misha. Если вы не обнаруживаете своих заданий в подобном листинге, значит они уже распечатаны. Ipr передает задание принтеру, ставя его в очередь на печать. Синтаксис , lpr [-А][-С class]l-Ddebugopt]{-F filterformat][-b][-i [numcols]][-k] [-J job][-K пит, -#лшп][-т mailTo]\-P printer] [-Q] [-r] [-R remoteAccount] [-s][-T titleH-O user][-v][-w widtb][-z zoptions] [filename...] Использует демона очереди печати, чтобы распечатать поименованные файлы пате в допустимых форматах. Демон применяет необходимые фильтры, чтобы распечатать файлы в соответствии с их форматами. Команда lpr копирует указанные файлы в каталог спула (очереди печати). По умолчанию таким каталогом является /var/spool/lpd/lp. Периодически программа спула, или очереди печати, под названием lpd пересылает файлы из очереди печати на принтер. -А Использует для аутентификации значение переменной окружения AUTH. -Ddebugopt Принимает разделяемый запятыми список отладочных установок в дв\ \ формах: facility=value или value, чтобы установить всеобщие точения по умолчанию. -к Отправляет задание прямо на сервер и обычно создаст временный фай ч для ввода перед отправкой.
II. Команды 403 -Q Помещает имя очереди печати в файл задания. -R remoteAccount Указывает учетную информацию (код счета), используемый дистанционной системой. -Z zoptions Передает опции zoptions с дополнительной информацией программе обработки временных очередей печати. -Sprinter Производит вывод на указанный принтер printer. -h Запрещает печатать страницы-разделители. -m mailto Посылает уведомление по электронной почте после выполнения задания. -г Удаляет файл после того, как он поставлен в очередь печати. В целях безопасности не должен использоваться с опцией -s. -s В настоящее время отправляет файлы прямо на сервер. В старых версиях 1рг этот флаг предполагал использование символических ссылок вместо копирования файлов в каталог спула. -К пит, -#пит Печатает пит копий поименованных файлов. -Cclass В целях классификации заданий замещает на странице-разделителе системное имя (возвращаемое hostname) на строку class. -ijob Указывает имя распечатываемого задания на странице-разделителе. Обычно используется имя первого файла. -Ititle Вместо имени файла указывает заголовок title для рг. -\Juser В целях учета печатает имя пользователя на странице-разделителе. -i [numcols] Определяет отступ во время печати; numcols — количество пробелов в начале каждой строки. По умолчанию отступ составляет восемь символов. -v/num Определяет ширину страницы для рг. -F format Задает спецификацию формата в виде одной строчной буквы: -Ь, 1 двоичный или литеральный файл, никакой обработки не производится -с Полагает, что файлы созданы программой cifplot. -d Полагает, что файлы содержат данные в формате DVI(tcx). -f Интерпретирует первый символ каждой строки как стандартный символ управления кареткой в FORTRAN. -g Полагает, что файлы содержат стандартные данные, созданные plot-утилитами, для построения кривых. -I Разрешает печатать управляющие символы, но запрещает разрывать страницы. -п Полагает, что файлы содержат данные в формате ditroff (независящая от устройств программа troff).
404 II Команды -р Исполыует рг для форматирования файлов. -t Полагает, что файлы содержат информацию в формате troff -v Полагает, что файлы содержат растровые изображения Пример Ставит в очередь печати файлы, имена которых начинаются с двух букв vv. Распечатка производится в двух экземплярах. % lpr -#2 w*. % Iprm удаляет зада. - череди печати. Iprm [-a] [-A] [-Pprinter] [-V] [-Uuser] [-Vdebugopt] [ jobt...) Команда Iprm удаляет задания из спула построчного устройства печати. Каждый пользователь может удалить лишь свои задания, хотя суперпользователь может удалить задания любого пользователя user.ApryMe\iTJob# может быть именем пользователя, идентификатором задания, номером задания или базовым шаблоном замещения, прилагаемым к идентификаторам заданий. Ключевое слово all (по умолчанию) отображает все задания. Оп ии -а -А -Pprinter Удаляет файлы из всех очередей печати, доступных пользователю. Использует для аутентификации значение переменной окружения AUTH. Указывает очередь печати принтера printer, в противном случае используется заданный по умолчанию принтер. -V Печатает информацию о версии Iprm и также подробную информацию о процессах. -Uuser Специально прилагаетUSERID для выполнения удалений на сервере. Это может выполнить лишь суперпользователь. -Ddebugopt Принимает разделяемый запятыми список отладочных установок в двух формах: facility=value или value, чтобы установить всеобщее значение по умолчанию. job# Удаляет задание за номером job#. Этот номер можно получить с помощью Ipq. Если никакие аргументы и опции не заданы, Iprm удаляет текущее активное задание, принадлежащее пользователю, вызвавшему команду.
II. Команды 405 IS - выводит содержимое каталогов и информацию 14. об указанных файлах. Синтаксис Is [option]...[file]... Выводит информацию об указанных файлах file; по умолчанию отображает на экране содержимое текущего каталога без скрытых файлов. Опции -a, —all Выводит список всех файлов каталога, включая скрытые, имена которых начинаются с точки. -A, —almost-all Выводит список всех файлов в каталогах, кроме текущего (.) и родительского (..) каталогов. -В, —ignore-backups Не включает в список файлы резервных копий, чьи имена оканчиваются символом ~, разве только они специально не указаны в командной строке. -d, —directory Выводит имена каталогов без их содержимого среди других типов файлов. -I pattern, —ignoTe=pattern Не включает в список файлы, чьи имена совпадают с шаблоном pattern. -L, —dereference Включает в длинный листинг информацию о файлах, на которые ссылаются символические ссылки, вместо самих ссылок. -R, —recursive Отображает рекурсивно содержимое всех каталогов. -D, —dired В листинге длинного формата (опция -1) печатает дополнительную строку после главного вывода: //DIRED//BEG1 END1 BEG2 END2 Здесь пары BEG/1/ и END/1/ обозначают целые числа, отмечающие позиции в байтах соответственно начала и конца каждого имени файла в выводе. Подобный листинг предназначен облегчить поиск имен файлов редактору Emacs. -G, —no-group В листинге длинного формата запрещает выводить информацию о группах. -h, —human-readable Добавляет к значению каждого размера букву М, обозначающую количество мегабайт (1048576 байт).
406 II Команды -Н, -si Добавляет к значению каждого размера букву М, обозначающую количество мегабайт (1000000 байт) в системе SI (International System of Units - в международной системе единиц измерения). -i, — inode Печатает слева от имени каждого файла в листинге длинного формата его индексный дескрнп гор. -1, — format=long, — format=verbose Создает листинг длинного формата, включая в него для каждого файча его тип, полномочия, количество жестких ссылок, имена пользователя и группы, размер в байтах, временную метку (по умолчанию время модификации). -о Эта опция эквивалентна применению —format=long и —no-group. -s, —size Печатает слева от имени количество занимаемых файлом блоков размером в 1024 байт. -с, — time=ctime, —time=status, —time=use В случае использования листинга длинного формата печатает статус времени изменения (etime в дескрипторе файла) вместо времени модификации. -f He сортирует, отображая файлы в произвольном порядке; допускает опции -all, но запрещает опции -1st. -г, --reverse Везде, где используется сортировка, выполняет ее в обратном порядке: имена файлов списка располагаются в обратном алфавитном порядке, первыми также выводятся самые новые файлы и самые маленькие по размеру и т.д. -S, —sort=size Сортирует файлы по размеру: первыми в списке располагаются самые большие файлы. -t, —sort=time Сортирует по времени модификации (mtime в дескрипторе файла): самые новые файлы идут первыми. -u, —time=atime, —time=access В случае использования листинга длинного формата печатает время последнего доступа (atime в дескрипторе файла) к файлу. -U, —sort=none Не выполняет сортировку и включает файлы в список в том порядке, в каком они хранятся в каталоге. -v, —sort=version Сортирует по имени и номеру версии (индекс/версия), располагая файлы с самым маленьким номером первыми. -X, —sort=extension Сортирует содержимое каталога в алфавитном порядке по расширениям имен файлов (символы после последней точки). Файлы без расширений располагаются раньше.
II. Команды 407 -1, — format=single-column \j-n Выводит по одному файлу в строке. Такой формат используется по умол- чанию, если стандартный вывод команды направляется не на терминал. -С, —format=vertical Выводит имена файлов по столбцам, сортируя по вертикали. Такой формат принимается по умолчанию для команды Is, если в качестве стандартного вывода используется терминал. —color[=ivAe«] Для распознавания типов файлов использует цвет, при этом параметр when может отсутствовать либо принимать одно из следующих значений: попе вообще не использует цвет (по умолчанию) auto использует цвет, если стандартный вывод направляется на терминал always всегда использует цвет. Опция —color при отсутствии when эквивалентна —color=always. -F, —classify, —indicator-style=classify Добавляет к каждому имени файла символ, указывающий тип. Ниже приведен перечень символов: * обычные исполняемые файлы / каталоги @ символические ссылки | FIFO = сокеты К именам обычных файлов никакой символ не добавляется. —full-time Выводит время в полном формате, включающем секунды. —indicator-style=won/ Добавляет индикатор word к именам элементов. Допускаются следующие значения индикатора: попе не добавляет никаких индикаторов (по умолчанию) file-type добавляет символ типа (см.опцию -F) кроме символа * classify добавляет * к именам обычных исполняемых файлов, в противном случае использует договоренности для file-type -k, —kilobytes Печатает размер файлов в виде количества блоков по 1024 байт, перекрывая принятый по умолчанию размер блоков. -m, ~format=commas Включает в список по горизонтали столько файлов, сколько может поместиться в строке, отделяя их друг от друга запятой и пробелом. -n, —numeric-uid-gid Вместо имен файлов включает в список числовые значения U1D и GID. -р, —file-type, — indicator-style=file-type Действует подобно опции -F, не помечает лишь исполняемые флйлы
408 II Команды -х FORMAT, --format=across, -forniat=horizontal Выводит имена файлов по столбцам, сортируя их по горизонтали -Т cols, — tabsize=co/v Табулирует в соответствии с шириной столбца cols. По умолчанию - 8. Если cols установлен в 0, вообще не применяет табуляцию. -w, —width=co/.s Устанавливает ширину экрана, по умолчанию берет ее из терминальных установок, если это возможно. В противном случае использует переменную окружения COLUMNS, если она установлена, иначе принимает ширину экрана равной 80. -b, —escape Выводит неграфические символы в именах файлов, используя после обратного слэша алфавитные и восьмеричные последовательности подобно тому, как это делается в С. -N, —literal Печатает только имена файлов. -q, —hide-control-chars Вместо неграфических (неотображаемых) символов в именах файлов печатает вопросительные знаки. Используется по умолчанию, если вывод направляется на терминал. -Q, —quote-name Заключает имена файлов в двойные кавычки. --quoting-style=wore/ Рассматривает выходные имена в стиле значений параметра word: literal выводит имена файлов как они есть shell если имена содержат метасимволы оболочек, подходит к ним с точки зрения оболочек shell-always в любом случае подходит к именам файлов с точки зрения оболочек с рассматривает имена файлов как строки языка С; действует подобно опции -Q escape действует подобно значению с, но опускает двойные кавычки locale действует подобно значению с, но использует кавычки, пригодные для локали; по умолчанию заложена пара - обратная и прямая кавычки Можно указать значение по умолчанию опции —quoting-style с помощью переменной окружения QUOTING_STYLE. Если переменная окружения не установлена, в качестве значения по умолчанию выбирается literal. —show-control-chars Печатает в именах файлов неграфические символы как они есть, что принято по умолчанию.
II. Команды 409 -block-size=i/;e Использует блоки размером size. -help Печатает сообщение по использованию и завершает программу. -version Печатает информацию о версии программы и завершает ее. Пример $ Is -al ВТОГО 2892 drwx 22 misha misha 4096 ВЮВ5 21:10 . drwxr-xr-x 6 root root 4096 ВЮВ30 16:24.. -rw 1 misha misha 1249 ВЮВ16 19:49 .ICEauthority -rw 1 misha misha 115 ВЮВ16 12:58 .Xauthority -rv-rv-r— 1 misha misha 0 ВЮВ13 18:39 .addressbook -rw 1 misha misha 2285 ИЮВ13 18:39 .addressbook.lu -rw-rw-r— 1 misha misha 165 ИЮВ19 21:24 .article -rw 1 misha misha 15289 ВЮВ 2 22:04 .bash_history -rv-r—r— 1 misha misha 24 ВЮВ30 16:24 .bashlogout -rw-r—r— 1 misha misha 230 ВЮВ30 16:24 .bash_profile -rw-r—r— 1 misha misha 124 ИЮН30 16:24 .bashrc drwx 4 misha misha 4096 ВЮВ 9 01:08 .ее -rvxr-xr-xmisha misha 333 ИЮВ30 16:24 .emacs drvx 3 misha misha 4096 ВЮЛ16 19:48 .enlightenment drwx 6 misha misha 4096 ИЮЛ16 19:48 .gnome drwxrwxr-x 2 misha misha 4096 ИЮЛ 9 00:59 .gnome-desktop drwxr-xr-x 2 misha misha 4096 ИКШ 9 03:28 .gnome-help-browser drwx 2 misha misha 4096 ВКШ 8 23:35 .gnomeprivate drwxr-xr-x 3 misha misha 4096 ВЮЛ30 16:24 .kde -rw-r—r— 1 misha misha 479 ВКШ11 21:17 .kderc -rw-rw-r— 1 misha misha 115 ВЮЛ22 00:56 .letter drwxrwxr-x 2 misha misha 4096 ИЮЛ16 19:49 .mc drwxrwxr-x 4 misha misha 4096 ИЮЛ 9 01:26 .netscape -rw 1 misha misha 456 ИЮЛ13 23:36 .pine-interrupted-mail -rw-rw-r— 1 misha misha 14044 ИЮЛ13 18:35 .pinerc -rw-r—r— 1 misha misha 3394 ИЮВ30 16:24 .screenrc drwx 3 misha root 4096 ИЮП 1 14:18 .xauth drwxr-xr-x 5 misha misha 4096 ВЮВ30 16:24 Desktop -rw-rw-r— 1 misha misha 0 ВЮЛ 9 00:41 PR1H51 drwxrwxr-x 2 misha misha 4096 АВГ 7 20:38 RCS -rw-rw-r— 1 misha misha 183 АВГ 8 15:32 RHAIL -rw-rw-r— 1 misha mail 119677 ИЮЛ 8 15:20 RHAILOSE.O -rw-rw-r— 1 misha misha 274439 ИОН 13 12:27 WIN -rw-r—r— 1 misha misha 16780 BUB 8 21:38 XF86Config -rw-rw-r— 1 misha misha 2623 АВГ18 22:20 arch.gz drwxrwxr-x 2 misha misha 4096 АВГ11 18:32 cvsdir -rw-rw-r— 1 misha misha 280 АВГ19 22:58 dead.article -rw 1 misha misha 808 СЕВ 1 15:25 dead.letter drwxrwxr-x 2 misha misha 4096 CEB19 14:00 git lrwxrwxrwx 2 misha misha 15 АВГ 6 21:05 hhh -> /rab/person/hhh -rwxrwxrwx 1 misha misha 124 ВЮП 1 15:23 letterall -rwxrwxrwx 1 misha misha 100 ИЮЛ 1 14:56 letterall" -rw-rw-r— 1 misha misha' 35763 BUB30 20:50 lex.yy.с -rwxrwxr-x 1 misha misha 20340 АВГ30 21:05 lexout drwx 2 misha misha 4096 ИЮН13 18:36 mail -rw-r—r— 1 root root 13 ВЮН30 21:45mainletter
410 II Команды -rw-rw-r— 1 misha -rw-rw-r— 1 misha -rw-r—r—lroot -rw-rw-r— 1 misha drwx 2 misha -rw-rw-r— 1 misha misha misha root misha misha misha 31 16 2370 8192 4096 0 АВГ 1 АВГ 1 АВГ16 СЕВ 4 СЕВ 9 СЕН 12 15; 15; 16; 19; 01; 11: :51 misha :24 misha" :04 my.ps : 55 nnn :25 nsmail :39 photo01.gif ISd'ttr - печатает атрибуты файла второй расширенной файловой системы Linux, в том числе и ранее установленные chattr. Синтаксис lsattr [-RVadvl][file...] Распечатывает атрибуты указанных файлов file. Опции -R -V -а -V -1 Рекурсивно отображает атрибуты каталогов и их содержимого. Отображает версию программы. Распечатывает информацию по всем файлам каталога, даже по тем, чьи имена начинаются с точки (скрытые файлы). Отображает каталоги, как другие обычные файлы, вместо вывода списков содержимого. Информирует о версии файлов. Подробно информирует об атрибутах, добавляемых с помощью команды chattr. П имер S lsattr гаЫ35 i гаЫ35 Ismod - выво ит список загружаемых модул-й Синтаксис lsmod Отображает информацию о всех загружаемых модулях: имя, размер, счсшик использований.
II Команды 411 ISOT - составляет список открытых процессами файлов в системах Unix. Синтаксис lsof [-?abChlnHOPRstUvV][-A Л][-с c][+|-d sJ[+|-D C][+|-f [cfgGn]] [-F [f]][-g [s]][-i |il][-k *]( + |-L [i]][-m ш][ + |-МП-° [о])[-р s] [ + |-r [t]][-S [t]H-T It]]t-u s][ + |-»]I — ]lnames] В качестве открытого файла names может выступать обычный файл, каталог, блоч- но-специальный файл, символьно-специальный файл, исполнительная текстовая ссылка, библиотека, поток или сетевой файл. Под сетевым файлом подразумевается сокет Internet, файл NFS, сокет домена Unix. В отсутствие каких-либо опций сообщает о всех открытых файлах, принадлежащих всем активным процессам. Опции -?, -h Отображает сокращенную форму вывода, обнаруживая и поясняя ошибки в прилагаемых опциях. -а Приказывает совместно применить все прикладываемые опции. -А А Указывает альтернативное имя списка файлов, где могут быть найдены в ядре адреса динамических модулей. -Ь Отменяет функции ядра, могущие блокировать - lstat(), readlink(), stat(). -с с Выбирает список файлов для выполняющихся процессов, чья команда начинается с буквы с. -С Запрещает печатать компоненты маршрутов из поименованного кэша ядра. +d s Выполняет поиск всех открытых образцов каталога s и содержащихся в нем файлов и каталогов верхнего уровня, не опускаясь по дереву каталога s и не следуя символическим ссылкам внутри него. -d s Выбирает список файлов, чьи дескрипторы располагаются в разделенном запятыми списке s (без пробелов). +D D Выполняет поиск всех открытых образцов каталога D и содержащихся в нем файлов и каталогов на полную глубину, игнорируя символические ссылки внутри D. -D D Использует кэшированиый файл устройства. Анализ с помощью ф> нк- ции stat() всех узлов дерева каталога /dcv затратен по времени. Информация, необходимая lsof (номера устройства и дескриптора, маршрчт). меняется редко. И обычно lsof поддерживает текстовый ASCII-файл кэшировашюго /dev. За опцией -D должна следовать функциональная
412 " Команды буква; за функциональной буквой может следовать необязательное имя маршрута. Isof распознает следующие функциональные буквы: ? сообщает маршруты кэшированного файла устройств b строит кэшированный файл устройств i игнорирует кэшированный файл устройств г считывает кэшированный файл устройств и считывает и обновляет кэшированный файл устройств Функции b, r и и сопровождаются именем маршрута. +|-f [cfgGn] Определяет, как интерпретировать аргументы имени маршрута. Знак "+" разрешает, а знак "-" запрещает эту комбинацию. Эти символы определяют требования к информации файловой структуры: с счетчик использования структуры файла f адрес файловой структуры g аббревиатуры флагов файла G флаги файла в шестнадцатеричном формате п адрес узлов файловой структуры -F/ Определяет список символов, обозначающих поля, выводимые для обработки другой программе, а также символ, завершающий каждое выходное поле. Каждое выводимое поле обозначается в/единственным символом. По умолчанию завершающий символ установлен в значение NL. -g [s] Выбирает список файлов для обработки с необязательными идентификаторами групп, представленными в разделенном запятыми наборе (без пробелов). -i И Выбирает список файлов, Internet-адрес которых совпадает с указанным в 1 адресом. Если никакой адрес не указан, эта опция выбирает все сетевые файлы Internet и Х.25. Если указано значение -i4 или -i6, отображаются только файлы соответствующих версий протокола IP. -к к Указывает имя файла ядра вместо /vmunix, /mach и т.д. -1 Запрещает перевод пользовательских идентификаторов в имена регистрации. +I-L [1] Разрешает (+) или запрещает (-) список счетчиков ссылок на файлы, где они доступны; они недоступны для сокетов или большинства FIFO и каналов. Когда задана опция +L без последующего номера, выводятся все счетчики ссылок. Когда задана опция -L (по умолчанию), никакие счетчики не выводятся. Спецификация в форме +L1 выбирает открытые файлы, на которые не было ссылок, а в форме +aLI <file system> - открытые файлы указанной файловой системы, на которые не было ссылок. _т т Вместо /dev/kmem или /dev/mem указывает файл памяти ядра, так называемый файл аварийного дампа.
II. Команды 413 +|-М Разрешает (+) или запрещает (-) вывод portmapper-pei истрации (см. portmap) для локальных портов TCP и UDP. -п Запрещает для сетевых файлов преобразование сетевых номеров в адреса хостов. -N Выбирает файлы NFS. -о Всякий раз отображает смещение файлов. Опции -о и -s являются взаимоисключающими. -о о Определяет число десятичных цифр, которые следует распечатать после Ot в смещении файла, до того как форма будет переключена в Ох. Если нулевое число (неограниченное) направляется Isof, для всего вывода будет использоваться форма Ot. -О Обходит обычно применяемую стратегию, препятствуя блокировкам со стороны некоторых операций ядра. -р s Составляет список файлов для обработки, чьи ID располагаются в разделенном запятыми списке х. -Р Запрещает для сетевых файлов преобразование номеров в имена портов. +|-г [/] Запускает Isof в режиме повтора: открывает файлы, выбранные другими опциями, делает задержку в t секунд (по умолчанию 15), затем повторяет вывод листинга и задержку до тех пор, пока не останавливается по условию, определенному в префиксе к данной опции. Если в качестве префикса стоит минус, выполняет повтор бесконечно. Isof может быть прервана любым прерыванием или сигналом QUIT (см. приложение I). Если в качестве префикса стоит плюс, завершает первый цикл без вывода информации по открытым файлам. -R Выводит идентификатор родительского процесса в столбце PPID. -s Всякий раз отображает размер файла. Если файл не имеет размера (пустой), ничего не отображается. Опции -о (без последующего счетчика) и -s являются взаимоисключающими. -S [г] Указывает необязательный таймаут в секундах для функций ядра: IstatO, readlinkO, statf). Минимальное значение параметра t равно 2, принятое по умолчанию - 15, когда никакое значение не задано, берется принятое по умолчанию. -Т [(] Управляет выводом (другие заголовки) информации TCP/TPI по следующим ключевым символам: q выбирает длину очереди вывода s выбирает отчет по состоянию w выбирает размер окна вывода Опция -Т без последующих ключевых символов отменяет вывот информации TCP/TPI.
II Команды +|-w Создает краткий отчет лишь с идет ификаторами процессов, но без заголовков, так что вывод может быть передан по конвейеру команде kill Эта опция предполагает опцию -w. Заказывает список файлов для пользователей, чьи разделенные запятыми имена регистрации или пользовательские идентификаторы расположены в наборе х. Заказывает листинг сокетов домена Unix. Выводит подробную информацию по версии Isof, а также сопутствующую информацию. Показывает компоненты (имена команд и файлов, Internet-адреса, файлы NFS и пр.), что были заказаны для включения в листинг, но не были обнаружены. Разрешает (+) или запрещает (-) подавлять предупреждающие сообщения. Сигнализирует о конце ключевых опций командной строки. Пример Следующий листинг показывает файлы, открытые пользователем misha и для него: f lsof -u misha COHHAND PID DSER bash 2566 misha bash 2566 misha bash 2566 misha bash 2566 misha bash 2566 misha FD cwd rtd txt mem mem gconv-modules. cache bash 2566 misha libtermcap.so.2. bash 2566 misha 2.3.2.so bash 2566 misha bash 2566 misha 2.3.2.so bash 2566 misha locale-archive bash 2566 misha bash 2566 misha bash 2566 misha bash 2566 misha find 2716 misha carddecks/cards- find 2716 misha find 2716 misha find 2716 misha find 2716 misha mem 0.8 mem mem mem mem Ou lu 2u 255u cvd ИРЕ DEVICE DIR DIR REG REG REG REG REG REG REG REG CBR CBR CBR CBR DIR gdkcard-bonded rtd txt mem mem DIR REG REG REG 3,2 3,2 3,2 3,2 3,2 3,2 3,2 3,2 3,2 3,2 4,1 4,1 4,1 4,1 3,2 3,2 3,2 3,2 3,2 SIZE 4096 4096 626028 88760 21040 11784 14408 1465640 50028 30305776 4096 4096 51028 88760 21040 NODE 227233 2 272767 272658 385054 272766 272669 272665 272679 449067 38644 38644 38644 38644 483625 2 320876 272658 385054 MAKE /home/misha / /bin/bash /lib/ld-2.3.2.so /usr/lib/gconv/ /lib/ /lib/libdl- /lib/libc-2.3.2.so /lib/libnss files- /usr/lib/locale/ /dev/ttyl /dev/ttyl /dev/ttyl /dev/ttyl /usr/share/apps/ / /usr/bin/find /lib/ld-2.3.2.so /usr/lib/gconv/ gconv-modules.cache
II. Команды 415 Ispci ВЫВ01ИТ инфо ма ию о всех PCI- ст ойствах. Синтаксис lspci [option] Команда Ispci выводит информацию о всех шинах PCI данной системы и подключенных к ним устройствах. Локальная 32-разрядная шина PCI (Peripheral Component Interconnect - подсоединение периферийных компонентов (устройств)) способна поддерживать 64-битное расширение для процессоров последнего поколения класса Pentium. Разработана фирмой Intel. Работает на фиксированной тактовой частоте 33/66 МГц, взаимодействие через шину происходит без участия ЦП. Подключаемые устройства позволяет конфигурировать автоматически, что дает серьезные преимущества при использовании в ПК технологии Plug-n-Play. Чтобы использовать lspci. нужно иметь ядро версии 2.1.82 или выше. Ц -v Выводит детальную информацию о всех устройствах; двойная опция -vv увеличивает количество выводимой информации. -п Сообщает информацию о разработчике PCI и числовые коды устройств. -х Выводит стандартный заголовок конфигурации PCI: первые 64 байта в шестнадцатеричном виде. Тройная опция -ххх позволяет получить дамп полной конфигурации PCI. -Ь Показывает все IRQ и адреса, как их видят платы на шине PCI (ядро может видеть по-другому). -t Показывает диаграмму в виде дерева, содержащего все шины, перемычки, устройства и подключения между ними. -s [[bus]:][slot][.[fimc]\ Показывает только устройства на указанной шине, слот и их функции (правильнее сказать, шестнадцатеричный номер функции). d [vendor]:[device] Показывает только устройства с указанными идентификаторами производителя и устройства. Шестнадцатсричные идентификаторы могут быть опушены или даны в виде * (звездочки), что означает любое значение. -' file Использует указанный файл в качестве БД с идентификаторами PCI-уст- ройств вместо принятого по умолчанию файла (например, /usr/sharc/ hwdata/pci.ids в Red Hat Linux 9). -p dir Использует каталог dir, содержащий информацию по шине PCI, вместо принятого по умолчанию /proc/bus/pci. "m Выполняет дамп данных устройств PCi в машинном читаемом формате для облегчения последующего анализа сценариями. Поддерживаются оба формага дамна, обычный и расширенный.
4 lb И. Команды -М -Р dir -HI -Н2 -Ffile Вызывает специальный режим, инт енсивно сканирующий шину, с целью обнаружения всех подключенных устройств в том числе и с неверно сконфигурированными перемычками. Этот режим доступен только суперпользователю и предназначен исключительно для отладки дефектных устройств, может даже вызвать аварию машины. Выводит информацию о версии программы, опция должна применяться в автономном режиме. Использует стиль конфигурирования доступа к каталогу dir, появившийся только в Linux 2.1 и более новых версиях, вместо /proc/bus/pci. Использует прямой доступ к устройству через механизм 1 Intel-конфигураций (только i386 и совместимые). Использует прямой доступ к устройству через механизм 2 Intel-конфигураций (только i386 и совместимые). Таким методом можно обратиться только к первым 16 устройствам любой шины, и в ряде случаев он вообще неприменим. Из данного файла извлекает всю информацию с выводом по команде lspci -х. Пример # lspci 00:00.0 Host bridge: Intel Corp. 430FX - 82437FX TSC (Triton I] (re» 02) 00:07.0 ISA bridge: Intel Corp. 82371FB PIIX ISA [Triton I] (rev 02) 00:07.1 IDE interface: Intel Corp. 82371FB PIIX IDE [Triton I] (rev 02) 00:0b.0 0SB Controller: OPTi Inc. 82С861 (rev 10) 00:Od.O Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/ 8139C/8139C+ (rev 10) 00:Of.O VGA compatible controller: Matrox Graphics, Inc. HGA 1064SG [Mystique] (rev 02) Эта команда очень удобна, когда нужно определить набор имеющихся в плате микросхем. lynx запускает браузер WWW Си. акс lynx [ option I [pat* | №L] lynx - полнофункциональиый клиент WWW (не требует X) для пользователей, работающих на курсоро-адресующих текстовых дисплеях (терминалы vtlOO и их возможные эмуляторы), lynx может отображать на экране дисплея документы в формате Н ГМЬ, содержащие ссылки как на файлы локальной системы, так и на файлы дистанционных систем, работающих под Gopher, HTTP, FTP, WAIS и NNTP серверами. lynx может использоваться для доступа к информации WWW или для построения информационных систем, изначально предназначенных для локального доступа. I) пх используется для построения некоторых CW1S (Campus Wide Information System - университетских информационных систем), но его также можно применять для созда-
II. Команды 417 ния систем, изолированных в рамках одной локальной cci и. При стар ie lynx загружает любой локальный файл, определяемый аргументом (локатором) URL. ции Ожидает получения аргумента со стандартного ввода. -acceptallcookies Принимает все Cookies - коды связи протокола HTTP; клиент может послать такой код сверху при последующих запросах. -anonymous Накладывает ограничения на анонимный счет (см. -restrictions). -assume_charset=M//W£'nome Определяет набор символов МШЕпате для документов. -assume_local_charset=/W//W£name Предназначает указанный набор символов для локальных файлов. -assume_unrec_charset=M/M£narae Использует набор МШЕпате вместо нераспознанных наборов символов. -auth =ID:PASSWD Устанавливает идентификатор авторизации Ю и пароль PASSWD, требуемые в некоторых системах для проверки защищенных документов. -base Предусматривает комментарий URL и тег BASE при выводе дампов text/html в случае опции -source. -blink Требует высокоинтенсивные фоновые цвета, если это поддерживается терминалом пользователя. -book Использует закладку при запуске lynx и загрузке стартовой страницы. -buriednews Включает сканирование новых статей новостей для "захороненных" ссылок и конвертирует их в новые ссылки. -cacbe=number С помощью number устанавливает количество кэшируемых документов; по умолчанию — 10. -case При поиске строк учитывает регистр букв. -cfg=filename Использует указанный файл в качестве файла конфигурации вместо используемого по умолчанию lynx.cfg. -child С помощью левой стрелки осуществляет выход в стартовом файле без сохранения содержимого. -cmd_log=/i/ename Записывает набираемые на клавиатуре команды в указанный файл filename. -cmd_script=filename Считывает набранные на клавиатуре команды, ранее «штатные с помощью опции -cmcMog, из указанного файла filename.
418 II Команды -color Устанавливает режим цветовой поддержки, если такой режим доступен, что эквивалентно установке переменной окружения COLOR TLRM, для этого lynx должен быть откомпилирован с библиотекой slang. -connect_timeout=w Устанавливает при соединении л-секундный (по умолчанию - 18000) тайм-аут. -cookies Включает поддержку заголовков Cookies. -cookie_file=_/i/enawe Указывает файл для сохранения Cookies. -cookie_save_file=/i/enome Хранит cookies в заданном файле. -core В случае фатальных ошибок выдает дампы. -crawl Выводит каждую страницу в файл, если задана опция -traversal, или же на стандартный вывод, если задана опция -dump. Формат вывода одинаков в обоих случаях. -debug-partial Устанавливает на стадиях показов задержку согласно MessageSecs. -uispiay=DISPLAY Устанавливает переменную дисплея для программ, запускаемых через гехес. -dont_wrap_pre Запрещает заключать текст в угловые скобки с опциями -dump и -crawl. -dump Готовит форматированный вывод документа, заданного по умолчанию или указанного в командной строке, и направляет его на стандартный вывод. -editor^D/ТШ Использует заданный редактор, возможные значения - vi, ed, emacs и т.п. -eraacskeys Допускает перемещения с помощью клавиш, подобные тем, что применяются в emacs. -enable-scrollback Включает режим совместимости с клавишами scrollback коммуникационных программ. -error_fiIe=/i/e Определяет файл, где lynx приводит отчет по кодам доступа HTTP. -exec Разрешает выполнение локальных программ, обычно эта возможность не включается. -fileversions Включает все версии файлов в локальные лнстинш каталогов VMS. -force_empty_hrefless_a Требует, чтобы элементы HRIiF-lcss дескриптора А были пустыми. Закрывает их сразу же после просмотра.
II. Команды 419 -forcehtml Рассматривает первый документ как HTML-докумеит. -forcesecure Включает флаг безопасности для SSL cookies. -from Включает передачу заголовков From (от кого). -ftp Запрещает ftp-доступ. -getdata Заполняет форму информацией со стандартного ввода, используя команду GET, и выводит результат заполнения. -head Отправляет запрос HEAD для MIME-заголовков. -help Печатает краткое описание синтаксиса команд lynx. -hiddenlinks=[o/)<io/i] Управляет отображением скрытых связей. При этом option может принимать следующие значения: merge нумерует скрытые связи вместе с другими связями в порядке их появления в документе и отображает заключенными в квадратные скобки listonly показывает скрытые файлы только в экранах L>ist и листингах, создаваемых опцией -dump или меню P>rint, но они возникают отдельно в конце этих списков; такая возможность заложена по умолчанию ignore не отражает скрытые связи даже в листингах -historical Включает использование > или --> в качестве терминатора комментариев. -homepage=[/i?Z. Устанавливает домашнюю страницу отдельно от стартовой. -image_links Включает ссылки на все изображения. -inuex=URL Устанавливает индексный файл для указанного локатора URL. -justify Осуществляет выравнивание текста. -WnVr=mimber Устанавливает счетчик файлов Ink#.dat, создаваемых с помощью опции -crawl, в значение number. -localhost Отменяет использование локаторов URL, указывающих на дистанционные узлы. -locexec Разрешает исполнение локальных программ только от локальных файлов. -mimehcader Выводит MIME-заголовок выбранного документа, полученный при просмотре его исходного кода. -minimal Включает минимальную версию, осуществляющую синтаксический анализ комментариев. -newschunksizc=wu/n/>er Устанавливает количество статей в листингах отдельных частей.
420 II Команды -ne\vsmaxchunk=nnmier Проверяет максимальное количество статей новостей в листингах, задаваемое number, перед тем как делить на части. -nobold Запрещает выполнять выделение полужирным шрифтом. -nobrowse Запрещает просмотр каталогов. -посс Запрещает применять для собственных копий приглашения Сс: в почтовых сообщениях. -nocolor Отключает цветовой режим, перекрывая возможности терминала, любой из флагов -color, переменную COLORTERM, но сохраняет установки файла .lynxre. -поехес Запрещает исполнение локальных программ, что принято по умолчанию, -nofilereferer Препятствует передаче заголовков Referer для файлов URL. -nolist Запрещает выводить в дампах список ссылок. -nolog Запрещает отправлять по почте владельцам документов сообщения об ошибках. -nonrestartingsigwinch Мгновенно реагирует на оконные изменения в случае запуска из-под xterm. Отменяет паузы при отправке сообщений о состоянии документа. Запрещает большинство функций печати. Запрещает автоматическое перенаправление и печатает сообщение со ссылкой на новый локатор URL. Запрещает передачу заголовков Referer (ссылок). Запрещает режим реверсного видео. Отменяет применение SOCKS proxy-raw. Запрещает передавать сообщения, связанные со статусом документа. -nounderline Запрещает видеоатрибуты, осуществляющие подчеркивание в докумен- -nopause -noprint -noredir -noreferer -noreverse -nosocks -nostatus -numberfields Помимо нумерации ссылок вводит нумерацию входных полей документа. -numberlinks Вводит нумерацию ссылок. -partial Отображает при загрузке страницы частей документа. -pa\ith=ID:PASSWD Устанавливает идентификатор авторизации ID и пароль P4SSIVD, требуемые для проверки на защищенном сервере Proxy. -popup Устанавливает поддержку выбора опций через "всплывающие" окна или списки радиокнопок.
II. Команды 421 -post data Обрабатывает информацию в ииде формы со стандартного ввода используя команду POST, и выводит результаты. -preparsed Отображает результат синтаксического анализа исходного текста HTML, когда используется совместно с опцией -source или в режиме просмотра исходного текста. -prettysrc Показывает в цвете отображение исходного текста HTML с лексическими элементами и тегами. -print Разрешает функции печати; принимается по умолчанию. -raw Устанавливает 8-битовую (по умолчанию) трансляцию символов для стартовых наборов. -realm При запуске ограничивает доступ к локаторам URL. -reload Освобождает кэш сервера Proxy только для первого документа. -restrictions=[o/)<io«] [,077(1011] [option]... Накладывает ограничения на использование ряда служб, что задается в виде списка опций. Аргументы option могут принимать следующие значения: all накладывает все возможные ограничения bookmark запрещает менять положение файла с закладками bookmarkexec запрещает устанавливать связи (ссылки) с помощью файла закладок change_exec_perms запрещает менять полномочия на исполнение файлов, но не каталогов, когда разрешено управление локальными файлами default синоним опции -anonymous, используемой в командной строке diredsupport запрещает производить управление локальными фай- disksave запрещает сохранять файлы на диске в меню загрузки и печати dotfiles запрещает доступ к скрытым файлам (имена начинаются с точки) и их создание download запрещает загружать некоторые файлы в меню загрузки (download menu) editor запрещает внешнее редактирование exec запрещает исполнение сценариев exec frozen запрещает пользователю менять опцию, разрешающую исполнение на локальной системе
II. Команды filc_url запрещает использовать меню G>otu, нужные ссылки или закладки для файлов, задаваемых с помощью URL goto запрещает команду g (goto) insideftp запрещает ftp-соединения для пользователей внутри домена inside_news запрещает отправку новостей Usenet пользователям внутри домена insiderlogin запрещает использовать команду rlogin пользователям внутри домена insidetelnet запрещает использовать telnet пользователям внутри домена jump запрещает команду j (jump) mail запрещает использовать почту multibook запрещает использовать сразу несколько закладок news_post запрещает публикацию новостей USENET optionssave запрещает сохранять опции в файле .lynxrc outsideftp запрещает ftp-соединения для пользователей вне домена outsidenews запрещает чтение и отправку новостей Usenet пользователям вне домена outsiderlogin запрещает использовать команду rlogin пользователям вне домена outside_telnet запрещает использовать telnet пользователям вне домена print запрещает большинство опций печати shell запрещает выполнять команды оболочки suspend запрещает переходить в фоновый режим, нажимая Ctrl+Z telnet jport запрещает указывать порт для соединения Telnet useragent запрещает модифицировать заголовок User-Agent (агент пользователя) Запрещает распознавание команд rlogin. Разрешает просматривать только каталоги, содержащие файлы .www_browsable. Чтобы показать очень длинные URL в строке состояния, использ>ет строку, содержащую три идущих подряд символа подчеркивания, что означает невозможность отобразить всю порцию. Выводит курсор в начале текущей выбранной ссылки, не скрывая его в правом нижнем углу.
II. Команды 423 -source Работает подобно опции -dump, но вместо форматированного выводит исходный текст HTML. -stack_dump Отменяет поддержку очистки SIGINT (см. приложение I). -startfile_ok Разрешает стартовый файл и домашнюю страницу не http-формата с опцией -validate. -tagsoup Использует синтаксический анализатор TagSoup вместо SortaSGML. -telnet He распознает команды TELNET. -term = TERM Сообщает lynx тип терминала, что полезно для дистанционного испол- -tlog Переключает между использованием Lynx Trace Log (журнала трассировки lynx) и стандартным файлом ошибок для трассировки вывода сессии. -trace Включает режим трассировки. -traversal Обходит все http-ссылки, встретившиеся в стартовом файле. При использовании с опцией -crawl каждая ссылка, начинающаяся с той же строки, что и стартовый файл, выводится в файл, предназначенный для индексации. -underscore Включает использование подчеркивания в дампах. -useragent = Name Устанавливает альтернативный заголовок User-Agent (агент пользователя). -use_mouse Включает поддержку мыши. -validate Для проверки принимает только локаторы ресурсов типа http. -verbose Включает комментарии [LINK], [IMAGE] и [INLINE] вместе с именами файлов этих изображений. -version Выводит информацию о версии программы. -vikeys Выполняет перемещения с помощью клавиш, подобные тем, что применяются в vi. -v/idth=mtmber Указывает число столбцов (по умолчанию - 80) для форматирования дампов. -withbackspaces Включает в вывод управляющие символы backspace с опциями -dump or -crawl. Пример Ниже представлена страница текста в формате HTML, отображаемая на экране lynx. Для вывода следующей страницы достаточно нажать клавишу пробела.
424 It Команды m' root©localhost,localdomain:/root | - п х Шзйл Правка Settings Справка johansen <pl of 7) The UN in uour dailu life; the Fconomic r,ommission for Fur-ope torgline.gif] ... fin a shopping spree Uhat the United Nations Frnnnmic roimnissinn for Furope (I IN/FRF) does for unul Running errands uith an eioht-uear old like Niels ran he пвгие-raokino. He has, nnne again, uandered nff. last. Fridau. it. took Mrs .Inhansen wore than half an hour t.n find him among the tinned vegetahles. He i,hs trying to pull out a tin nf tomatoes from the bottom of the stark without making the other ones tumble. But tndau Mrs .Inhansen has more lurk. Tt doesn't take her long t.n find her son, uho is truing to unsoreu a gas-hnttle. [johan.gif] - Uhat do uou think uou're doing? she uells. - Can't unu see Muimiu. the child replies uith an air of innncenne. Г» checking uhether this bottle has anu leaks! — press space for next page —~" Arrow keys: Up and Bouin to move. Right to follow a link; Left to go back. H)elp [Options P)rint G)o H)ain screen Quit /=search [delete]=historjj list mail посылает и получает поч Синтаксис mail [-ilnv][-s subject][-с cc-addr][-b bcc-addr] to-addr... mail [-IinNv] -f [паше] mail [-IinNv]t-u user] Интеллигентная почтовая система с командным синтаксисом, напоминающим ed. Опции "v Подробно сообщает на терминал пользователя о результатах доставки. "' Игнорирует любые сигналы прерывания от терминала, что удобно при использовании почты на некачественных телефонных линиях. _I "Заставляет" mail работать в интерактивном режиме, даже когда устройство ввода является не терминал. Как правило, специальный символ -действует при отправке почты в интерактивном режиме. "п Запрещает использовать конфигурационный файл /ctc/mail.rc. "N Запрещает выводить заголовки сообщений при чтении почты ичи редактировании почтовой папки. -s subject Предоставляет возможность указать в командной строке тему. Только первый параметр после флага -s используется п качестве текста темы.
II. Команды 425 поэтому необходимо применять кавычки, если в тексте встречаются пробелы. -с cc-addr Производит рассылку копии по списку cc-addr. -b bcc-addr Производит рассылку "слепых" копий по списку bcc-addr. -f пате При обработке считывает содержимое почтового ящика пате или указанного файла. При выходе пользователя из программы mail записывает ранее удаленные сообщения назад в этот файл. -u user Эквивалентна команде mail -f /var/spool/mail/use/-, где user - имя пользователя. Ниже приведен список команд mail. Каждая команда набирается в отдельной строке, за ней могут следовать аргументы. Можно набирать только первый символ командного слова. оманд- -п Находит п-ное предшествующее сообщение и печатает его. Если номер не указан, печатает предшествующее сообщение. ? Выводит краткую справку по командам. [command выполняет команду оболочки (см. sh и csh). Reply Отправляет ответ лишь автору сообщения. Print list Действует аналогично команде print, но кроме сообщений из списка list распечатывает также проигнорированные поля заголовков. Туре Идентична команде Print. alias arg Печатает заданный псевдоним arg; без параметров распечатывает все псевдонимы, определенные в настоящее время. alternates addr Эта команда полезна, если пользователю приходится иметь учетные счета на разных компьютерах. Выводит состояние по указанному адресу (адресам) или по текущему их набору, если никаких параметров не указано. chdir dir Меняет текущий рабочий каталог пользователя на указанный dir. Если параметр dir отсутствует, то переходит в каталог пользователя, определенный при регистрации в системе. сору Эта команда выполняет то же, что и save, но в отличие от последней не удаляет оригинал. delete arg Берет в качестве параметра список сообщений arg и помечает их все как удаленные. Такие сообщения не сохраняются в mbox и будут недоступны для большинства других команд. dp.dt Удаляет текущее сообщение и печатает следующее. Если отс>тствует следующее сообщение, сообщает о EOF (конце файла). edit list Берет список сообщений и по очерелн предлагает каждое из них текстовому редактору. При выходе из редактора сообщение возвращается
426 II Команды exit Немедленно возвращается в оболочку, не модифицируя системный почтовый ящик пользователя, его файл mbox или файл, указанный с помощью опции -f. file Синоним команды folder. folders Выводит список всех почтовых папок вашего каталога, folder folder Переключает на новый почтовый файл или папку folder. Если параметр не указан, сообщает, какой файл считывается в настоящий момент. Если же параметр задан, то сохраняет измененное содержимое в текущем и считывает его в новый файл. Для имени файла (параметр folder) определено несколько специальных соглашений: # предшествующий файл % системный почтовый ящик %user системный почтовый ящик пользователя user & файл mbox текущего пользователя +folder файл folder из почтового каталога пользователя from Печатает заголовки (headers) сообщений из списка сообщений. headers arg Печатает заголовки текущей группы сообщений. Обычно в группе содержится по 18 сообщений. Если в качестве параметра arg задан знак плюс, печатает заголовки следующей группы, если знак минус - предшествующей группы из 18 сообщений. help Синоним команды ?. hold Помечает сообщения в списке сообщений, которые должны быть сохранены в системном почтовом ящике пользователя вместо mbox. ignore list Добавляет поля заголовков в список игнорируемых заголовков. При печати сообщения поля заголовка, входящего в список игнорируемых заголовков, не распечатываются на терминале пользователя. Если команда задана без параметров, выводится текущий набор игнорируемых полей. mail name Отправляет почту пользователю с указанным именем пате. mbox При выходе из программы пересылает список сообщений в mbox исходного каталога пользователя. Это действие производится по умолчанию, если только не указана команда hold. next mes Выводит сообщение mes или просто следующее, если отсутств> ют параметры. preserve Синоним команды hold. print list Печатает сообщения из заданного списка list на терминал пользователя. quit Завершая сессию, сохраняет все неудаленные и нссохранснныс сообщения в пользовательском файле mbox его каталога, заленстпопанно- го при регистрации. Сохраняет все сообщения, помеченные с помощью команды hold или preserve, а все прочие сообщения удаляются ил соответствующего системного почтового ящика.
II. Команды 427 reply Берет список сообщений и отправляет почту отправителю и всем получателям этого сообщения. По умолчанию сообщение не должно удаляться. respond Синоним команды reply. retain list Добавляет список полей заголовка к списку остающихся полей. Только такие поля будут выводиться на экран терминала при печати сообщений. Все другие поля заголовка подавляются. Если команда задана без параметров, будут распечатаны все остающиеся поля. Сохраняет сообщения в указанном файле file (почтовом ящике). На терминал пользователя выводится имя файла в кавычках, за которым следуют счетчики количества строк и символов. Устанавливает значения переменных. Параметры перечисляются в форме опция=значение (или просто опция). До или после знака равенства не должно быть никаких пробелов. Рекомендуется использовать кавычки. Без параметров распечатывает все значения переменных. Отбрасывает игнорируемые поля заголовков при сохранении сообщений. Сохраняет только определенные (остающиеся) поля заголовков при сохранении сообщений. Вызывает интерактивную версию оболочки. Печатает размер каждого сообщения в символах. Считывает команды из указанного файла file. По умолчанию выводит первые пять строк каждого сообщения. Синоним команды print. Отменяет действие команды alias. Восстанавливает помеченные для удаления сообщения. Помечает сообщения как непрочитанные. Действие этой команды противоположно действию set. Запускает полноэкранный редактор для редактирования каждого сообщения списка. Подобна команде save, но сохраняет только тело сообщения без заголовков. Это полезно, если по почте передаются исходные тексты программ. Синоним команды exit. Переходит в следующее окно при выводе на экран сообщения. Вернуться в предшествующее окно можно с помощью команды z- Следующие команды применяются при составлении сообщений и выполняют специальные функции. Должны вводиться в начале строки сообщения. save/i/e Set param saveignore saveretain shell size sourse file top type list unalias undelete unread, U unset visual write xit z
428 II Команды ды -Icommand -Ъпате Выполняет указанную команду command оболочки и возвращается к обработке сообщения. Добавляет перечисленные имена пользователей в список получателей "слепых" копий. Добавляет перечисленные имена пользователей в список получателей копий. Включает в сообщение файл dead.letter из исходного каталога пользователя. Запускает текстовый редактор обработки сообщения. По завершении редактирования можно добавлять к сообщению текст. Вставляет поименованные сообщения messages в отправляемое сообщение, при этом игнорируемые заголовки (см. команды ignore и retain) не включаются. Идентична команде ~f, но включаются все заголовки сообщений. Предоставляет возможность по очереди редактировать поля заголовков сообщений, используя терминальные символы erase и kill. mmessages Вставляет поименованные сообщения messages в отправляемое сообщение; при этом в начало каждой строки вставляется символ табуляции или символ, определяемый строковой опцией indentpreflx для того, чтобы выделить вставки. Игнорируемые заголовки не включаются. ■Mmessages Идентична команде ~ш, но включаются все заголовки сообщений. -{messages -Fmessages ~Р ~q Печатает сообщение вместе с полями заголовка. Прекращает работу над сообщением и сохраняет его в файле dcad.letter ("умерших писем") исходного каталога пользователя, если установлена save. ~rfilename -sstring ~tname ~v Включает в сообщение указанный файл filename. Назначает строку string в качестве поля заголовка Subject: (Тема). Добавляет указанные имена в список получателей. Осуществляет вызов альтернативного редактора, определяемого с помощью опции VISUAL. Обычно таковым является полноэкранный редактор. -v/filename Записывает сообщение в файл filename. ~\command Пропускает сообщение через команду command, как через фильтр. Обычно в таком качестве применяется команда fmt. Если команда не создает выходной файл или завершается некорректно, сохраняет оригинальный текст сообщения. -~:mail-command Выполняет заданную почтовую команду mail-command, хотя не всякую команду можно выполнять.
II. Команды 429 —string Вставляет в сообщение текстовую строку siring, начинающуюся с символа ~. Установка опций выполняется с помощью команд set (включено) и unset (выключено). Опции могут быть как бинарными (в этом случае только существенно знать, установлены ли они илн нет), так и строковыми. Во втором случае интересны их актуальные значения. Бинарные опции append Сохраняя сообщения в mbox, добавляет их в конец файла, а не в начало. Эту опцию желательно указать в файле /ctc/mail.rc. ask, asksub Запрашивает тему каждого посылаемого сообщения. Если ответ получен в виде символа newlinc (новая строка), поле темы будет отсутствовать в отсылаемом сообщении. askcc Запрашивает список адресатов для отправки копий сообщений. Ответ в виде символа newline свидетельствует о том, что пользователь удовлетворен текущим списком. askbcc Запрашивает список адресатов для отправки "слепых" копий сообщений. Ответ в виде символа newline свидетельствует о том, что пользователь удовлетворен текущим списком. autoprint После удаления одного сообщения автоматически выводит следующее. debug Устанавливает двоичную отладочную опцию debug; действие аналогично указанию опции -d в командной строке. dot Интерпретирует единственную точку в строке как конец отправленного сообщения. hold По умолчанию хранит сообщения в системном почтовом ящике. ignore Игнорирует сигналы прерывания от терминала, отражая их символом @. ignoreeof Отказывается воспринимать Ctrl+D как конец сообщения. metoo Обычно, если происходит расширение списка рассылки, в состав которого входил отправитель, он будет исключен из расширения. Данная опция обязательно включает отправителя в список рассылки. noheader Установка этой опции аналогична действию в командной строке флага -N. nosave В случае аварийных завершений не сохраняет частичные сообщения в файле dead.lcttcr исходного каталога пользователя. Replyall Взаимно меняет смысл команд reply и Reply. quiet При первом запуске не сообщает о версии программы. searchheaders В случае установки этой опции спецификация в форме /х:у будет расширять все сообщения, содержащие подстроку у в поле заголовка х. Данный поиск не чувствителен к регистру. verbose Установка этой опции аналогична действию в командной строке флага -v.
430 И Команды Строковые опции EDITOR Указывает маршрут к текстовому редактору, используемому командами edit и ~е. LISTER Указывает маршрут к программе вывода содержимого каталога, используемого командой folders. По умолчанию принята /bin/Is. PAGER Указывает программу постраничного вывода сообщения на экран. По умолчанию принимается more. SHELL Указывает маршрут к оболочке, используемой командами ! и ~!; если не определена данная опция, применяется оболочка, взятая по умолчанию. VISUAL Указывает маршрут к текстовому редактору, используемому командами visual и ~v. crt Указывает максимальную длину сообщения до вывода его на экран программой постраничного просмотра. По умолчанию принимается высота экрана терминала, хранимая в системе. escape Задает первый символ, используемый при создании сообщений вместо ~. folder Задает имя каталога, используемого для хранения папок сообщений. Если имя начинается со слэша, то программа mail считает, что задан абсолютный маршрут. В противном случае маршрут берется относительно исходного каталога пользователя. МВОХ Определяет имя файла, взятого по умолчанию как mbox в исходном каталоге пользователя. Здесь может быть задано имя папки. record Задает маршрут к файлу, используемому для регистрации отправляемой почты. Если данная опция не указана, то отправляемая почта не сохраняется. indentprefix Определяет строку, применяемую для выделения вставляемого в сообщение текста с командами типа ~т. По умолчанию используется Л1 (символ табуляции). toplines Устанавливает количество строк сообщения, выводимых командой top. Обычно распечатываются первые пять строк. Пример Вот как может выглядеть содержимое файла /ctc/mail.rc. set ask askee append dot save crt ignore Received Message-Id Reeent-Nessage-Id Status Mail-From Return-Path Via
II. Команды 431 ITiailpOSt подпитывает группу новостей почтовыми сообщениями. Синтаксис mailpost [-r addr]\-t addr] [-a addr]]-u distribution][-m mailing-list] ]-Ъ database] newsgroups Программа mailpost считывает со стандартного ввода надлежащим образом отформатированное сообщение электронной почты и передает его inews для последующей отправки серверу новостей для группы newsgroups. Перед тем как передать статью программе inews, проверяет, не приходила ли она ранее, а также меняет заголовки (headers): очищает некоторые адресные заголовки и помещает префикс Х- перед неизвестными заголовками. Программа mailpost регистрирует Message-ID всех поддерживаемых статей. И если статья была уже ранее получена, она будет "молча" опущена. Некоторые ошибки приводят к тому, что статья будет отправлена администратору новостей. Опции -г addr Использует заданный адрес addr в качестве заголовка Path (маршрута), если другое не определено. -f addr Этот флаг является синонимом флага -г. -a addr Добавляет параметр addr к статье в качестве заголовка Approved (одобренная). -й distribution Добавляет параметр distribution к статье в качестве заголовка Distribution (куда распределять). -т ma/7/ng-/i.sf Добавляет параметр mailing-list (список рассылки) к статьям в качестве заголовка Mailing-List, если упомянутый заголовок до этого не существовал. -b database Определяет с помощью параметра database местоположение БД для хранения идентификаторов сообщений присланных статей, что препятствует хождению статей "по кругу", если они возвращались обратно. Эта опция необходима, если для процессов mailpost не определен доступ на запись к временному каталогу новостей (переменная athtmp в файле inn.conf). mailTO - программа отправки мультимедийных почтовых К сообщений. Синтаксис mailto [-a cftarset][-c латец-г message-id] \ -s subject]] recipient-name]
432 И. К манды Простой и дружественный (более, чем mctasend) интерфейс пользователя для отправки мультимедийной почты в стандартном для Internet формате MIME. Программа mailto - очень напоминает программу mail, известную в системах Berkeley. Хотя mailto предназначена лишь для отправки почты, а не для ее чтения. Ни одна из возможностей чтения почты упомянутой выше mail не включена в mailto. Почтовые сообщения mailto могут включать MIME-тип text/richtext, позволяющий использовать подчеркивание, полужирный шрифт, курсив, мультимедийные объекты, текст на языках не в ASCII-формате (например, Hebrew). Опции -с пате Отправляет копии сообщений указанному списку получателей пате. Список имен желательно заключать в кавычки. -s subject Указывает тему сообщения. -a charset Указывает альтернативный набор символов: один из используемых наборов символов терминала. -г message-id Указывает Message-ID (идентификатор сообщения), используемый при создании поля заголовка под названием In-Rcply-To. Почта отправляется списку получателей, задаваемому аргументом recipient-name. Компоненты списка отделяются друг от друга пробелами или запятыми. Если набрать в командной строке mailto без всяких аргументов, программа запросит список получателей То:, тему сообщения Subject: и, возможно, список СС: людей, получающих сообщения. После получения предварительных данных программа mailto предложит ввести собственно содержимое сообщения. Все, что вы наберете на клавиатуре, войдет в состав сообщения, кроме строк, начинающихся со специального символа —. Эти строки рассматриваются как команды, передаваемые mailto. Завершает сообщение Ctrl+D или комбинация символов ~. (тильда и точка). Подготавливая текст сообщения, можно использовать возможности обычного форматирования текста (MIME-тип tcxt/richtext): подчеркивание, курсив, выделение полужирным, центрирование и т.п. В сообщение можно включать нетекстовую информацию: изображения, звуковые файлы. Базовой командой для включения мультимедийных объектов в текст сообщения является ~*. После ввода такой команды mailto предложит выбрать разновидность вставляемых данных из предлагаемого ею списка. Как правило, в этом списке имеется следующая строка: 1: Raw data from a file, with you specifying the content-type by hand Выбрав такую строку, пользователь может вставить информацию из нетекстового файла, указав его имя. Может включить в сообщение вывод какой-нибудь команды, введя символ | и эту команду. Если пользователь решил вставить данные из указанного им файла, ему предстоит еще задать пару: вид/подвид (см. mctasend). Ознакомиться с перечнем предлагаемых пар можно, вводя символ ? (вопросительный знак). Эти пары перечислены в локальном конфигурационном файле mailrnp или в файле mailrap исходного каталога пользователя, который можно модифицировать в соответствии с насущными потребностями. В системе, как правило, имеется прототип этого файла, знакомящий с существующими порами.
II. Команды 433 Ниже приведен список команд mailto: ~ ? выводит справку по командам — вводит текст, начинающийся с символа ~ ~. отправляет почту и завершает работу программы ~/ устанавливает максимальный размер, при превышении которого сообщение делится на части ~?+ выводит справку по отображению символов клавиатуры в 8-битные символы (не ASCII-символы) ~> вводит отступ слева ~< отменяет отступ слева ~<R вводит отступ справа ~>R отменяет отступ справа —н устанавливает 8-битный режим для определения не ASCII-символов — отменяет 8-битный режим (возврат к ASCII-символам) ~* добавляет нетекстовые данные: изображения, звуковую информацию и т.д. ~л включает (и отключает) режим "справа налево"; подходит для некоторых языков, например, арабского -Ь включает режим полужирного набора символов ~с добавляет элементы к списку СС: ~d читает файл dead.letter (или поименованный файл ~d filename) ~е перехолит в режим редактирования составляемого сообщения ~h переходит в режим редактирования заголовков ~i осуществляет набор символов курсивом ~j устанавливает альтернативное выравнивание: -jc - центрирует -jl - выравнивает по левому краю -jr - выравнивает по правому краю ~п устанавливает newline (новую строку) ~р распечатывает сообщение ~q завершает выполнение, копируя текущее сообщение в файл dead.letter ~Q включает режим цитирования (заключает в кавычки) ~г считывает поименованный текстовый файл и включает его в почтовое сообщение —s переустанавливает тему сообщения ~S включает семитический режим: одновременно устанавливает обработку символов "справа налево" и 8-битный режим (не ASCII-символы) ~t добавляет элементы к списку То: ~и включает подчеркивание символов
434 И Команды -v редактирует с помощью редактора, определяемого переменной окружения VISUAL ~w записывает сообщение в указанный файл ~z добавляет содержимое файла -/.signature (текстовая подпись) ~Z добавляет содержимое файла -/.SIGNATURE (нетекстовая подпись, MIME- формат) Пример Ниже приведен фрагмент протокола работы программы mailto. root@localhost.loceldomain:/root _ П X Шайл Правка Settings Справка Subject: letter Dear Mike! This is a song for you ~* Please choose which kind of data you wish to insert: 0: Й raw file, possibly binary, of no particular data type. It Raw data from a file, with you specifying the content-type by hand. 2t A reference to data stored in an external location 3t A Postscript File 4t An Andrew inset/document Enter your choice as a number from 0 to 4: 1 If you want to include non-textual data from a file, enter the file name. To include the output of a command, enter "I" followed by the command. If you do not want to include anything, just press ENTER (RETURN). > au.mod Enter the MIME Content-type value for the data from file au.mod (type '?' for a list of locally-valid content-types): audio/mod Included data in 'audio/mod' format (continue) It's all Good luck to you В письмо вставлен звуковой файл в формате audio/mod. m3IITO-n6Dr6W - отправляет электронную почту в смешанном формате Hebrew/Enalish. Синтаксис mailto-hebrew tsailto-argumentB Программа mailto-hebrew запускает xtcrm (х-термннал), используя соответствующий шрифт (iso-8859-8), что даст возможность подготовить сообщение п смешанном формате Hebrew/English (древнееврейский/английский). Запускает программу mailto и передаст ей аргументы mailto-argwnents.
II. Команды 435 make - утилита, управляющая группой файлов, на основе которых создается программа. Синтаксис ' make [-f file\l-C dir)[-d][-e][-h][-i][-1 dir][-j[ jobs]]l-k][-l[ioad] ] [-n][-o fiIel[-p][-q][-r][-s][-S][-t][-v)[-w][-W file) target... Цель make - автоматически определить, какая часть программы нуждается в повторной компиляции, например, из-за изменения исходного текста. Помимо программ на языке С утилита make может использоваться и с программами на других языках, лишь бы их компиляторы могли быть запущены командой оболочки. Применение make не ограничивается только программами. Ее можно использовать для описания любого задания, где некоторые файлы должны автоматически обновляться, как только меняются другие файлы. Типичное использование утилиты make - создание нового исполняемого файла из обновленных объектных файлов, когда в результате проведенных изменений производится очередная компиляция исходных файлов. Чтобы применять make, необходимо создать файл по имени makefile, описывающий отношения между файлами программы и командами модификации каждого файла. Если существует пригодный makefile, то каждый раз, внеся очередные изменения в некоторые исходные файлы, достаточно набрать команду оболочки make, которая произведет все необходимые компиляции. Программа make использует БД makefile и времена последних модификаций файлов, чтобы решить, какой из файлов нуждается в обновлении. Для каждого из таких файлов она записывает команды модификации БД. Говорят, что make выполняет команды makefile, обновляющие некоторые выходные имена, где под термином имя обычно подразумевается программа. Если только опция -f не задана, make просматривает в описанном порядке GNUmakefile, makefile и Makefile. Обычно вы вызываете такой файл как makefile или Makefile. Рекомендуется имя Makefile, так как он расположен ближе к началу листинга каталога, возле других важных файлов, таких, как README. Первое проверяемое имя - GNUmakefile - не очень рекомендуется для большинства случаев, так как его содержимое может быть не очень понятно другим версиям make. Если вместо параметра makefile стоит дефис, считыва- ется стандартный ввод. Основные опции -С dir Перед чтением makefile меняет каталог на указанный параметром dir. -d В добавление к обычной печати выводит также и отладочную информацию. "е Выдаст переменные окружения, пропуская и\ через переменные makefile. -(file Использует указанный файл как makefile.
43b И Команды -h Печатает сообщение об использовании. -i Игнорирует все ошибки в командах, выполняемых в процессе построения целевого файла. -I dir Указывает каталог dir для поиска включаемых файлов makefiles. -j jobs Задает количество одновременно запускаемых заданий (команд). Если определена опция -j без параметра, make не ограничивает количество одновременно запускаемых заданий. -к При нахождении ошибки продолжает обработку, насколько это возможно. -l[load] He стартует новое задание, если средняя загрузка по меньшей мере load (число с плавающей запятой). Заданная без аргумента, удаляет предшествующий предел загрузки. -п Печатает команды, которые должны быть выполнены, но не исполняет их. -о file He пересоздает указанный файл, даже если он "старше", чем его зависимости. Важно отметить, что файл рассматривается как "очень старый" и правила в нем игнорируются. -р Распечатывает БД (содержит правила и значения переменных), полученную при чтении makefile. -q "Справочный режим". Не запускает никаких команд и ничего не печатает. Лишь возвращает код завершения, равный нулю, если указанный вывод уже находится в БД, в противном случае - формирует ненулевой код. -г Запрещает использовать встроенные неявные правила, очищает список заданных по умолчанию суффиксов. -s Запрещает выдачу информационных сообщений. -S Убирает действие опции -к. -t Меняет дату файлов, не меняя их самих. Создает впечатление, что выполнялись команды, хотя в действительности - это не так. -v Печатает информацию о версии программы make и некоторые дополнительные сведения. -w Печатает содержимое рабочего каталога до и после обработки. -W/i/e Создает видимость модификации выходного файла. Используемая с опцией -п, команда make информирует о последствиях модификации файла. Примеры Если приходится менять ядро, то невозможно обойтись без команды make. Хотя подобные работы может иыполнять только суперпольюпатель. Для конфигурирования ядра необходимо запусти гь два сценария:
II. Команды 437 I make checkconJig t make checkhelp Первый из сценариев проверяет исходное дерево на предмет отсутствия образцов для включения вида #include <linux/config.h>, второй - проверяет, нет ли в файле конфигурации недокументированных опций. Вполне возможно, что такие опции имеются, хотя для вашей конфигурации - это не сушественно. Оба эти сценария вполне безвредны, они ничего не модифицируют. Не забудьте только перейти в соответствующий каталог. В зависимости от версии это может быть, например /usr/src/linux-2.2.15 или аналогичный каталог. Для настройки ядра можно воспользоваться командной строкой, текстовым меню или графической программой. Что демонстрируется ниже. ■ . root@localhost.localdomain: /usr/src/linux-2.2.1А Файл Правка Settings Справка CrootQlocalhost linux-2.2.14]* make config rtn -f include/asm ( cd include ; In -sf asm-i386 asm) /bin/sh scripts/Configure arch/i386/config.in « # Using defaults found in arch/i386/defconfig * * * Code maturity level options * Prompt for development and/or incomplete code/drivers (CCNFICEXPERIHENTfiL) [Y/n/?] Linux Kernel v2.2.14 Configuration « Arrow keys navigate the menu. <Enter> selects submenus —>. Highlighted letters are hotkeys. Pressing <Y> includes, <N> excludes, <H> modularizes features. Press <EscXEsc> to exit, <?> for Help. Legend: [*] built-in [ 1 excluded <M> module < > nodule capable ■ •■ itaturi level •■ ions — rooessor type and features —> oadable module support —> eneral setup —> lug and Play support —> lock devices —> N tuorking options —> elephony Support —> CSI support —> ESSES < Exit > < Help >
438 II Команды Щ Linux Kernel Configuration Coda maturity level opUons j Processor type and features I Loadable module support 1 General setup I Plug and Play support 1 Block devices 1 Networking options j QoS and/or fair queueing 1 Teiepnony Support J SCSI support I SCSI row-level drivers 1 Network device support J ARCnet devices | Elnemel (10 or 1 MMbit) j Ethernet (1000 Mbit) Appletalk devices Token ring devices Wan Interfaces Amateur Radio support IrDA subsystem support Infrared-port device drivers ISDN subsystem Old CD-ROM drivers (not SCSI Character devices Mice Joysticks Watchdog Cards Video For Linux J i 1 1 1 1 1 _J not IDE) 1 I 1 1 1 1 _ И К Ftape, the floppy FUesystems f Network Fie Sys Partition Types j Native Language! console drivers | Sound | Additional low teV Kernel hacking ( Save and Exit Quit Without Savf Load Configuratio Store Configurat*' И здесь не обойтись без команды make. В первом случае начнется настоящий допрос по поводу параметров нового ядра. Нажатие клавиши Enter означает принятие установки по умолчанию. Более удобный пользовательский интерфейс предоставляет команда # make menuconfig (случай второй). Команда # make xconfig предоставляет меню в графическом режиме (случай третий). Главное преимущество последних двух способов - возможность менять только те опции, которые необходимы. Для установления всех зависимостей используется команда # make dep. И, наконец, чтобы откомпилировать новое ядро достаточно набрать # make Image или # make bzlmage (сжатый образ ядра). makeactive - инструмент, который перекрывает существующий файл active для Usenet. Синтаксис makeactive [-ш][-о] makeactive вызывает find, чтобы получить список всех каталогов-накопителей дерева хранения новостей - <patharticles in inn.confx При этом отвергаются все каталоги с именами lost+found, а также те, в составе имени которых содержится точка. Также просматриваются все другие каталоги в поисках числовых имен файчов. Каждая статья хранится в файле, имя которого соответствует ее номеру. В процессе поиска определяются наивысший и наинизший номера. Если в файле inn.conf включена опция storagcapi, то для установления наивысшего и наишишего номеров makeactive считывает overvicw.indcx(nHflcKC БД обзоров статен). Вывод программы - это набор строк файла active. Поскольку не существует другого пути \ знать, является ли группа регулируемой (moderated) или нет, четвертое поле всех члеменгов
II. Команды 439 устанавливается в значение у. Поэтому каталоги среднего уровня, которые не относятся к группам новостей, будут созданы как группы новостей без каких-либо элементов. Например, существует группа com.source.linux, но не com.sourcc. Опции -т Будет пытаться привести в порядок наивысший и наинизший номера статей, где это возможно. Если статьи найдены в группе новостей, их номера отражают то, что найдено. Но если статьи найдены не в группе новостей, то будет удерживаться наивысший номер от старого файла, а низший номер будет устанавливаться в значение, превышающее высший номер. Этот флаг применяется лишь вместе с флагом -о. -о Считывает существующий файл active для установления списка имен групп и затем перенумеровывает все группы. При этом сохраняет четвертое поле файла active, если оно присутствует. Действует аналогично команде renumber для ctlinnd, хотя innd при этом не запускается. Этот флаг нельзя применять, если вывод перенаправляется в стандартный файл active. makeactive завершается с ненулевым кодом, если возникают какие-либо проблемы. такеаерепа - C03iaeT зависимости в make-файлах. Синтаксис makedepend [-Dname=def][-Dnajne][-lincludedir][-Yincludedir][-a] [-fmakefile] l-oobjsuffix] [-pobjprefix] [sstring] [-vwidth] [-v] -m] I — otheroptions —] sourcefile... Программа makedepend считывает каждый sourcefile и подвергает его содержимое синтаксическому анализу подобно тому, как это делает препроцессор языка С, отрабатывая все директивы #includc, #define, #undef, #ifdef, #ifndcf, #endif, #if, #elif, #else и определяя, какие директивы ^include могут использоваться при компиляции. Любые директивы #include могут ссылаться на другие файлы, также, в свою очередь, имеющие #include. Эти файлы тоже подвергаются синтаксическому анализу. Каждый файл, прямо или косвенно включаемый в sourcefile, называется зависимостью (dependency). Эти зависимости записываются в makefile таким образом, что программа make будет знать, какие объектные файлы следует перекомпилировать, когда зависимость меняется. По умолчанию makedepend помещает свой вывод в файл makefile, если таковой существует, в противном случае - в Makefile. Для каждого sourcefile, обнаруженного в командной строке, makedepend записывает в makefile строки следующего формата: BourcefHe.о: dfile Здесь dfile - это зависимость, разрешаемая с помощью директивы #inrludr. Пользователь может применять те же самые аргументы, что и для цсс. и npoi рпмма makedepend игнорирует любые опции, не поддерживающие этого факта.
440 I) Команды Опции -Dname=defy -Dname Помещает определение пате в таблицу символов (идентификаторов) makedepend. Без параметра =def определяемый символ устанавливается в значение 1. -lincludedir Включает указанный каталог в список каталогов, просматриваемых makedepend при отработке директив #include. По умолчанию makedepend обследует только стандартный каталог /usr/include. -Yincliidedir Заменяет все стандартные каталоги для просмотра одним указанным каталогом при отработке директив ^include. -а Добавляет зависимости в конец файла makefile вместо замещения. -f'makefile Определяет альтернативный makefile, в который makedepend помещает свой вывод. Если в качестве имени файла стоит дефис, отправляет выходную информацию на стандартный вывод, не меняя содержимого существующего файла. -oobjsuffix Определяет суффикс имени объектного файла иной, чем привычный .о. -pobjprefix Определяет префикс имени объектного файла. Обычно используется, чтобы определить каталог для объектного файла. По умолчанию - пустая строка. -viwidth Задает ширину width выходной строки. Обычно makedepend создает выходные строки, размер которых не превышает 78 символов. -v Подробно информирует о ходе отработки. -гл Предупреждает о множественных включениях. Приказывает makedepend создавать предупреждения, если любой входной файл включает другой файл более одного раза. — otheroptions — Если makedepend в списке аргументов обнаруживает двойной дефис, то любой далее следующий нераспознанный аргумент молча игнорируется. Второй двойной дефис отменяет эту договоренность. makehistory инструмент, вносящий поправки в БД history для Usenet. Синтаксис i makehistory [-A oldtmp][-a active][-Ь][-D dir][-d dir][-f filename] [-h /ile][-l fiie][-i][-n][-0][-o)[-R][-r][-S][-s size][-T tmpdir] [-t[B|h|s|s]](-U][-u)[-v][-x] makehistory перестраивает текстовый файл history и связанную с ним БД dlw. По умолчанию имя текстового файла - <pathdb in inn.conf>/history. Программа makehistory просматривает файл active, чтобы установить, с каталогами каких гтл пп новостей внутри каталога <palhclb in inn.conf>/ необходимо работать. Если группа была
II. Команды 441 удалена, но ее каталог все еще сущесгвуег, makehistory игнорирует ею. Программа считывает каждый найденный файл (статью) и заводит для него строку в файле history. Программа makehistory также восстанавливает статьи, сохраненные традиционным способом через хранилище api. В этом случае БД унифицированных обзоров и ее индекс могут быть созданы совместно. Перетрансляция статей, сохраняемых иным способом, в традиционный - не поддерживается. После того, как текстовый файл записан, makehistory перестраивает БД dbz. Опции -A oldtmp Хранит копию history в файле, задаваемом параметром oldtmp. -a active Использует вместо заданного по умолчанию файла active (<pathdb in inn.conf>/active) его аналог, определяемый параметром active. -b Удаляет любые статьи, в которых отсутствуют заголовки Message-ID. -D dir Использует каталог dir в качестве традиционного каталога накапливаемых статей. По умолчанию принят <patharticles in inn.confX Применение этого флага обосновано лишь совместно с флагом -г. -d dir Использует dir в качестве каталога для хранения обзоров статей. По умолчанию принят <pathoverview in inn.confX Применение этого флага обосновано лишь совместно с флагом -t. -f filename Если используется этот флаг, то файлы БД именуются соответственно filename.uir, filename.index и filename.hash. В противном случае выполняет временную ссылку на имя history.n, а файлы БД именует history.n.dir, history.n.index, history.n.hash. -h file Использует в качестве старого файла history файл, задаваемый параметром file. По умолчанию принят <pathdb in inn.conf>/history. Применение этого флага имеет смысл лишь совместно с флагом -t. -I file Добавляет индекс обзора статьи в указанный файл file. Этот файл может быть создан, если применяется хранилище api вместе с флагом -О. -i Игнорирует старую БД. Использование флага -о предполагает также на- -О Создает БД обзоров. Если используется флаг -О, будет переписана существующая БД. Во избежание такой возможности можно указать другой каталог БД с помощью флага -d. Не создает никакую связь (ссылку) и просто перезаписывает существующий файл history. В случае существования старой БД программа makehistory использует ее для определения размера новой БД. Если флаг -t задан совместно с дополнением Н, или h, применение флага -о разрушает старый файл history и операция "проваливается". Просто просматривает спул-каталог, не трогая файлы. Применение т го- го флага обосновано лишь совместно с флагом -t. Удаляет старые статьи после выполнения трансляции, прообразу ющей традиционно хранимые статьи п статьи, хранимые по-новому через \рл-
442 II Команды нилище api. Применение этого флага обосновано, если используется флаг -t. -г Перестраивает файлы dbz по существующему текстовому файлу. Флаг -i или -s может быть полезен, если отсутствуют соответствующие файлы dbz. -S Игнорирует статьи, хранимые традиционным методом. -s size При указании приблизительного количества элементов новой БД игнорирует любую старую БД. Корректно задав размер size, можно создать более эффективную (оптимизированную) БД. -Т tmpdir В процессе функционирования makehistory создает временный файл, содержащий по строке на каждую найденную статью. По умолчанию этот файл создается в каталоге <pathtmp in inn.conf>. С помощью tmpdir можно указать любой временный каталог. Во время работы makehistory вызывается sort; в случае задания этого флага, ей будет передан флаг и параметр tmpdir. По умолчанию команда sort, вызываемая makehistory, использует временный каталог <pathtmp in inn.confX -t Транслирует хранимые статьи в статьи, хранимые по-новому через хранилище api. С помощью одного из дополнительных флагов задается способ переноса хранимых статей: Н переносятся в соответствии с файлом history h так же, как и для Н S переносятся в соответствии со спул-каталогом s так же, как и для S При трансляции от спул-каталога makehistory добавляет заголовок Xref с маршрутом, если статья не имела такого заголовка. Выполняя это, makehistory считает, что статья не будет перекрестно отсылаемой. Нельзя использовать совместно флаги -t и -и. -U Удаляет любые перекрестно отсылаемые (связанные) статьи после выполнения трансляции. Применение этого флага обосновано, если используется флаг -t. Но в то же время, если флаг -U не используется и даже задан флаг -t, удаления статей не производит. -и Предполагает, что запущен innd. И для любой не найденной в БД dbz статьи посылает серверу команды addhist (см. ctlinnd). Команда makehistory -bu полезна после серьезного сбоя системы для удаления поврежденных статей и приведения БД в более "приличное" состояние. "v Если флаг -v используется совместно с флагом -и, программа makehistory выводит копии всех добавляемых строк на стандартный вывод. "х Никогда не производит запись в history. Этот флаг целесообразно применять, если используются флаг -t с h и флаг -О, но без флага -R.
II. Команды 443 ГПЗП - форматирует и выводит страницы руководства по операционной системе Linux. Синтаксис man [-adfhkKtwW] [section] I-H patA][-P pager]]-S list]l-C fiie][-m system] [-p string] паше... Обычно с командой man задается имя name интересующей пользователя команды. Можно указывать необязательный аргумент section, определяющий раздел руководства, где содержится данная команда. Дело в том, что описания некоторых команд можно найти сразу в нескольких разделах руководства. Например, документация по mount содержится во 2 и 8 разделах руководства, и это далеко не исключение. Оп ии -а Отображает все страницы руководства для указанной name, а не только первую. Это полезно для name, команды, описания которой содержатся сразу в нескольких разделах руководства. -с Повторно форматирует страницы руководства, даже если существовала отформатированная страница. -d Печатает вместо страницы руководства отладочную информацию. -D Аналогична опции -d, но еще печатает страницы руководства. -f Действует подобно команде whatis. -h Распечатывает допустимые опции команды man. -к Действует, как команда apropos. -t Использует troff, чтобы отформатировать страницы для печати. -w Отображает вместо актуальных страниц руководства их расположение. -W Подобна опции -w, но распечатывает по одному имени в каждой строке. -К Производит поиск команды на всех страницах руководства и на каждом найденном файле требует распоряжений о дальнейших действиях: у вывести страницу руководства п пропустить страницу руководства q завершить поиск -С file Использует в качестве файла конфигурации указанный/<7е. -М path Устанавливает заданный параметром path маршрут поиска страниц руководства. -Р pager Использует указанную программу pager для отображения страниц руководства; по умолчанию - less -is. -S list Указывает разделенный запятыми список разделов для поиска. -m system Указывает альтернативное руководство mnn pagrs.
444 II Команды -р string Указывает препроцессоры, запускаемые перед nroff и troff; параметр string может принимать следующие значения: е eqn r refer g grap t tbl p pic v vgrind lpi ep Ниже приведено отображение одной маленькой страницы руководства. д1 rootOlocalhostlocaldomain: /root Файл Правка Settings Справка ZDIFF(l) ZDIFF(l) Wt€ zcmp, zdiff - compare compressed files SYNOPSIS zcup [ cmp_options ] filel [ file2 1 zdiff t diff„options ] filel [ file2 ] ffiSCRIFTION 7nmp and zdiff are used to invoke the СШ or the diff program on compressed files, fill options specified are passed directly to слд or diff. If only 1 file is specii fied, then the files compared are filel and an uncompressed Eilel.gz. If two files are specified, then they are uncompressed if necessary and fed to cmp. or diff. The exit status from сш or diff is preserved. SEE ALSO cmp<l), diff(l), zmore(l), zgrep(l>, zneu<l), zforce(l), gzip(l>, gzexe(l) BUGS Messages from the сщ or diff programs refer to temporary filenames instead of those specified. На самом верху страницы отображено название команды; в круглых скобках указывается номер раздела руководства. На этой странице имеется несколько основных стандартных секций: NAME наименование (имя, имена) команды SYNOPSIS описание синтаксиса DESCRIPTION описание команды (команд) SEE ALSO родственные или близкие команды BUGS обнаруженные ошибки и неточности
II. Команды 445 ГПС - запускает диспетчер файлов под названием Midnight Commander. интаксис mc |-abcCdfhPstuUVx]|-l log]{dirl [dir2]][-v file] тс - это графическая оболочка для Unix-образных систем, очень напоминающая знаменитый просмотрщик каталогов (Norton Commander), без которого иные пользователи ие представляли свою "жизнь" в DOS. mc - это просмотрщик каталогов и диспетчер файлов для Unix-образных систем. Аргумент dirl, - каталог, отображенный в выбранной панели, dirl - каталог, показанный в другой панели. Опции -а Отключает использование графических символов для рисования линий; для рисования линий применяет следующие символы: ±, =, |. -Ь Устанавливает монохромный (черный и белый) режим дисплея. -с Устанавливает цветной режим дисплея. -С arg Указывает в командной строке набор цветов arg. -d Отключает поддержку мыши. -f Отображает маршруты поиска файлов конфигурации тс, заданные при компиляции. -h Выводит список опций тс. -1 log Сохраняет в файле log диалог с сервером FTP. У тс множество различных возможностей: он также позволяет копировать файлы с дистанционной системы. -Р При выходе из программы печатает последний рабочий каталог. -s Работает в "медленном" терминальном режиме, при котором не выводятся линии, разделяющие столбцы, и запрещается вывод многих сообщений. -t Для определения информации о терминале использует значение переменной окружения TERMCAP. -и Запрещает запускать параллельную оболочку, или командный процессор. -U Разрешает использовать параллельную оболочку. -vfile Запускает внутренний просмотрщик для отображения указанного файла. -V Выводит информацию о версии программы. -х Осуществляет запуск тс в окне xtcrni (mipiyiuibiioro терминала).
446 II Команды Пример Вот как выглядит тс, запущенный в xtcrm: Ш mishaOlocalhost localdompiti: /home/mishe Левр.я пйнель K-VRCS фяйл Комнндр. Настройки v>- prin32,v prin39,v prin41,v prim42,v prin51,v Рйэнер 409Б 888 545 305 5945 203 Время правки Сен 19 00:43 Ивн 6 23:21 7 20:38 6 23:21 е 23:21 6 23:21 Инн Инн И»н Прявяя понель r<-/hopie Рнэиер Вкчжи прйвкы /misha tint: Key frequently visited ftp sites in the hotlist: type СЛ, [mishaQlocalhost RCS]* I 1Помочь 2Меню ЗПУосмот4Прявкя 5Копия БПеремес7НвКтлог8УднШ7ь9Нен|оНС ЮВмход mcookie - создает magic cookies (магические числа) для xauth. mcookie [-v][-f filename] mcookie генерирует 128-битное случайное шестнадцатеричное число для программы xauth, позволяющей выводить и менять сведения об авторизации, которые использует Х-сервер. О щи -f filename magic cookies генерируются на основе различной случайной информации: текущего времени, идентификатора процесса, идентификатора родительского процесса, содержимого входного файла filename и т.д. -v Указывает источник получения случайного числа, например, /dcv/random, /dev/urandom, файлы в /proc, /(lev/audio. Пример $ mcookie -v Got 16 bytes from /dev/random 5cl3041233fe31c9ba353a2192d62464 $
II. команды 447 md5sum - вычисляет и проверяет контрольную сумму, используя алгоритм MD5. Синтаксис md5sum [option]lfile] md5sum [option] --check [file] Печатает и проверяет контрольную сумму файла file; если имя файла отсутствует или вместо имени стоит дефис, считывает стандартный ввод. Опции -b, —binary Считывает файлы как двоичные. -с [file], —check [file] Считывает имена файлов и контрольные суммы из фяйла/ile, выполняя сверку. -t, —text Считывает файлы как текстовые (по умолчанию). -status Выводит только код завершения, характеризирующий результат операции. -w, —warn Предупреждает о неподходящим образом отформатированных строках контрольных сумм. —help Выводит список опций и завершает программу. —version Выводит информацию о версии и завершает программу. Контрольные суммы подсчитываются, как описано в RFC 1321. При проверке контрольных сумм в качестве ввода используется прежний вывод этой программы. По умолчанию распечатывается строка с контрольной суммой, символ, указывающий тип, и имя каждого файла. Символ, указывающий тип, принимает следующие значения: пробел - для текстового файла и звездочка - для двоичного. Пример $ md5sum prim43 8d5961665d4afl286e0al63b85el6322 prim43 $ ITIGrCJ© производит слияние изменений от двух файлов в К третий. Синтаксис merge [option] filel file! file3 Предполагается, что filel - это оригинал, а два других файла - file 1 и filei мо чи- фикации file!. Включает все изменения, отличающие filei от Jlle2. в filel. Результат направляется в filel.
448 II Команды Конфликт обычно возникает, earn file 1 ufile3 имеют изменения в общем сегменте строк. Если конфликт обнаружен, merge выводит предупреждение и заключает область конфликта в угловые скобки (< >): <««« filea строки файла filea строки файла filcb >»»» fileb Если такое случилось, пользователь может отредактировать результат и удалить одну из альтернатив. Опции -А Отображает конфликтные ситуации, используя стиль опции -А команды diff3, что сливает все изменения, отличающие filei от filel, в fileX. Подробно информирует о происшедшем. -Е и -е Обе опции указывают стили конфликтов, менее подробно сообщающие о происшедшем, чем опция -А. По умолчанию принята опция -Е. Если задана опция -с, команда merge не предупреждает о конфликтах. -L label Эта опция может задаваться до 3-х раз. Указывает метки, используемые в именах соответствующих файлов при возникновении конфликтных ситуаций. Другими словами, команда merge -Lx -Ly -Lz a b с создает вывод по файлам х, у и z вместо а, Ь, с. -р Посылает результат слияния на стандартный вывод вместо перезаписи файла^/е 1. -q He предупреждает о конфликтах. -V Выводит информацию о версии программы. ITIGSCJ - управляет доступом по записи к вашему терми- К. налу. Синтаксис mesg [y|n] Разрешает или запрещает принимать сообщения от других пользователей, отправленные с помощью таких команд, как write или talk, на ваш терминал. Опции -У Разрешает доступ по записи к вашему терминалу (разрешает вывод сообщений). -п Запрещает доступ по записи к вашему терминалу (запрещает вывод сообщений). Если никакая опция не указана, выводит текущий статус доступа вашего терминала
II. Команды 449 Пример $ mesg is у S ITIGSS3CJ6S подсчитывает количество сообщений в почтовом ящике или папке. Синтаксис messages messages folder-name Подсчитывает, полагаясь на найденные поля From:, количество сообщений в текущем почтовом ящике входящих сообщений или в указанной папке folder-name. Пример £ messages /var/spool/mail/sofia There are 5 messages in folder /var/spool/mail/sofia. $ В папке /var/spool/mail/sofia обнаружено 5 сообщений. metamail - инфраструктура для поддержки мультимедийных сообщений электронной почты. Синтаксис metamail [-b]l-B][-ccontenttype ][-d][-e][-ffrom-пате][-h] l-m ineiJer-neine][-p][-P][-r][-ssubject][-q][-w]l-R]I-y][-zJ [file-name] Программа metamail считывает файл mailcap, чтобы определить, как отображать нетекстовый файл почтового сообщения на локальном сайте пользователя и какую для этого вызвать программу. Хотя в этом описании речь идет только об электронной почте, metamail также полезна для мультимедийной поддержки новостей и программ чтения электронных досок объявлений. Пользователи обычно не вызывают mctamail непосредственно. Наоборот, mctamail автоматически вызывается программами чтения почты, когда нм приходится отображать нетекстовые сообщения. Это руководство рассчитано на тех пользователей, которые будут добавлять поддержку mctamail к обычным программам чтения почты, а также на тех, кто модифицирует файл mailcap, добавляя к нему строки. Программа mctamail определяет тип сообщения, используя заголовок Content-type (вид содержимого), как это определено в RFC1049 и RFC-1341(MIME). С помощью опций -Ь и -с программа mctamail может работать даже с почтой не в формате Internet, например, в формате Х.400. Она также автоматически декоднрусг почту, которая рапсе содержала 7-бнтное кодирование для транспорт мровкн, если только
450 II Команды в сообщения включается заголовок Content-I'ransfer-Encoding, как определено в RFC-1341. Если информация была закодирована с помощью кодирования basc64, программа будет преобразовывать последовательность CR и LF в символ ncwiinc (новой строки) лишь для текстовых данных, если только не будет инструктирована по-другому в соответствии с полем tcxtualnewlincs в файле mailcap. Вызванная без опций и аргументов mctamail ожидает получения на свой стандартный ввод почтового сообщения в формате RFC 822 или считывает его из файла file-name. Ниже перечислены применяемые опции командной строки. Опции -Ь Сообщает mctamail, что следует сообщение не в формате RFC 822; принимает лишь тело сообщения без заголовков. Использование опции -Ь требует применения опции -с. -В Говорит о том, что сообщение следует отображать в фоновом режиме, при этом в файле mailcap не должен быть установлен атрибут ncedstcrminal. He может применяться с опциями -р и -Р. -ccontenttype Сообщает metamail о типе содержимого с помощью contenttype, а не через заголовки. -d Предлагает metamail "не задавать вопросов" до запуска интерпретатора для просмотра сообщения. -е Предлагает mctamail поглотить в теле сообщения идущие впереди символы newline. -ffrom-name Указывает имя отправителя сообщения. В противном случае эта информация по возможности извлекается из заголовка. -h Указывает, что для печати сообщения применяется metamail. Автоматически включает опцию -d. -mmailer-name Задает имя почтовой программы, вызвавшей metamail. Эта информация помещается в переменную окружения, чтобы информировать любую оболочку, вызванную mctamail. -р Производит за раз постраничный вывод. -Р Эта опция подобна -р, но при этом печатается сообщение Press Return to go on (для продолжения нажмите Return), приняв после которого сигнал нажатия Return, программа завершает вывод сообщения. -Ч По умолчанию mctamail печатает несколько ключевых заголовков сообщения и также другую информацию. Эта опция запрещает вывод информационных сообщений. -г По умолчанию metamail отказывается "работать" с идентификатором root. Благодаря этой опции "соглашается" быть запущенной как root. -R Указывает, что предварительно, до любых других операций I/O, должна быть выполнена /usr/iisb/rcset, переустанавливающая состояние терминала.
II. Команды 451 -ssubject Указывает тему почтового сообщения. По умолчанию эта информация извлекается из заголовков. Полученная с помощью этой опции текстовая строка будет помещена в переменную окружения, чтобы в дальнейшем быть доступной любому интерпретатору, вызываемому mctamail. -w Вместо того чтобы обращаться к файлу mailcap в поисках решения по отображению информации сообщения, просто декодирует каждую часть и записывает в файл в ее низкоуровневом (возможно двоичном) формате. -у Пытается "оторвать" сообщение в MIME-формате от собственно его тела. Это полезно, если MIME-формат отвергается системой доставки почты как нераспознанный. -z Приказывает mctamail в конце работы уничтожить ее входной файл. По умолчанию определен следующий маршрут поиска файла mailcap: SHOME/.mailcap:/usr/locaI/etc/mailcap:/usr/etc/mailcap:/etc/mailcap:/etc/mail/ mailcap:/usr/public/lib/mailcap. metasend - интерфейс для отправки нетекстовых данных в мультимедийных сообщениях электронной почты. Синтаксис metasend [-Ь][-с cc][-F from]]-e encoding][-t filename][-i content-id] [-1 content-id] [-m HIHE-type][-s subject] [-S splitsize][-t to][-z] [-n] [-D content-description] [-o outputfile] [-/multipart-subtype] [-Б] [-P preamble-file] ПЦИИ -b Устанавливает пакетный (неинтерактивный) режим. Программа завершается с ошибочным кодом, если не получит из командной строки всю необходимую ей информацию. -с ее Отправляет копии сообщения по указанному списку адресов ее. -D content-description Указывает строку, используемую в качестве Content-description: (описание содержания). -е encoding Устанавливает тип кодирования. Ниже даны возможные значения параметра encoding: base64 quoted-printable x-uue 7 bit Последний тип сообщения - 7 bit - означает отсутствие какого-либо кодирования.
452 II. Команды -Е Сообщает о том. что включаемый файл является файлом MIME-типа и не нуждается в дополнительных полях заголовка Content-* или каких- либо других. -f filename Указывает файл, содержащий данные для отправки. -V from Задает строку, используемую в качестве заголовка From: (от кого). -i content-id Задает строку, используемую в качестве поля заголовка Content-Id: (идентификатор содержания) для сообщений MIME-типа. -1 content-id Задает строку, используемую в качестве поля заголовка Content-Id: для сообщений MIME-типа, состоящих из нескольких частей. Части создаются metasend. -m MIME-type Указывает тип MIME-сообщения. -п Указывает, что должен быть включен дополнительный файл. Перед каждым появлением опции -п в командной строке должны быть заданы, как минимум, опции -т, -с и -f и, причем отдельно для каждого включаемого файла. -о outputfile Записывает созданное почтовое сообщение в указанный файл outputfile вместо отправки по почте. -Р preamble-file Указывает файл, содержащий альтернативный текст и используемый в качестве преамбулы MIME-сообщения, состоящего из нескольких частей. -s subject Задает строку, используемую в качестве поля Subject: (тема). -S splitsize Указывает максимальный размер splitsize, при превышении которого сообщение будет разбито на части с помощью splitmail. -t to Указывает адрес получателя (поле То:- кому). -/ multipart-subtype Указывает использование подвида MIME-сообщения, состоящего из нескольких частей. -z Данная опция уведомляет, что в любом случае будут удалены временные файлы, даже если доставка сообщений не выполнена. Вызванная без аргументов программа metasend предложит пользователю определить те же поля, что и задаваемые в командной строке с помощью вышеперечисленных опций. Сначала будет предложено заполнить поля То:, Subject:, CC:, а затем Content-type:. Содержимое последнего поля определяется MIME-стандартом и обычно содержит пару значений вид/подвид, где вид описывает общий тип данных, в то время как подвид - их формат. Например, для рисунка в формате GIF в ноле Content-type: следует занести imagc/gif, в то время как для звукового клипа в базовом формагс и- law в это поле записывается строка audio/basic. Полное описание используемых типов даст стандарт RFC 1341.
II. Команды 453 Пример Ниже приведен фрагмент протокола выполнения metasend, запущенной без аргу- ш rootOlocalhostlocaldomain: /root Файл Правка Settings Справка Subject: picture СС: Content-type: image/jpg Name of file containing image/jpg data: photo82.jpg Bo you want to encode this data for sending through the mail? 1 — No, it is already in 7 bit ftSCII 2 — Yes, encode in baseG4 (most efficient) 3 — Yes, encode in quoted-printable (less efficient, more readable) 4 — Yes, encode it using uuencode (not standard, being phased out) 1 Bo you want to include another file too (y/n> [n] ? n Belivering mail, please uait... Mail delivery apparently succeeded. trootQlocalhost /root]» CrootQlocalhost /root]» | mimencode кодирует сообщения электронной почты в MIME-формат и декодирует их в оригинальный формат. Синтаксис mimencode [-u][-Ь][-q]|-p][filename](-0 outputfile] Программа mimencode просто преобразует поток байт в один из стандартных почтовых форматов кодирования, определенных MIME - специальным стандартом, предназначенным для пересылки в Internet мультимедийных почтовых сообщений. Эта процедура называется кодированием, и она необходима для передачи бинарных (двоичных) данных. Программа mimencode выполняет также и обратную процедуру - декодирование. Если в командной строке задан аргумент filename, считывает информацию поименованного файла вместо стандартного ввода (по умолчанию) и после обработки направляет ее на стандартный вывод. Опции -Ь Использует стандартный (по умолчанию) формат кодирования - basc64. -q Использует при кодировании формат quoted-printable -и Пытается декодировать стандартный ввод. -р Заменяет последовательность символов CR (возврат каретки) и LF перевод страницы) на ncwlinc (символ новой строки). Эта опция имеет смысл совместно с опцией -Ь. -о oulput/ile Эта опция направляет вывод в поименованный файл outputfile вместо стандартного вывода.
II. Команды Программа mimcncode призвана заменить uuencode для электронной почты и службы новостей. Самый главный недостагок заключается в том, что базовый формат uuencode - это не стандарт, существует несколько его разновидностей, к тому же плохо совместимых. miniCOm - дружественная коммуникаци иная прог амма. minicom [-somlz8]l-c on|off][-S script][-d елtry][-a on|off]["t tern] [-P Pty][-C capturefile)lconfiguration] Имея minicom, легко подключиться к остальному миру. Но предварительно следует подключить к одному из последовательных портов модем. Программа minicom - очень мощная, с ее помощью можно подключиться к электронным доскам объявлений, поддерживать список телефонных номеров, загружать и пересылать файлы. Она поддерживает lock-файлы на последовательных устройствах, многопользовательский режим с индивидуальными файлами конфигураций, интерпретатор языка сценариев и многое другое. Опции -о -т -М -a on/off -t term Запускает minicom в режиме конфигурирования (только для суперпользователя). При этом вы попадаете в меню конфигурирования, редактируя содержимое (параметры по умолчанию) файла /etc/minirc.dfl. Не инициализирует при запуске модем и lock-файлы. Использует в качестве командной клавишу Meta или Alt. Если вы работаете на терминалах, не имеющих клавиши Meta или Alt, ничего не остается, как по умолчанию использовать в качестве командной клавиши Ctrl+A . Программа minicom полагает, что ваша клавиша Meta посылает ESC-префикс, а не другое варианты, устанавливающие наивысший бит символа. Действует аналогично -т, но полагает, что ваша клавиша Meta устанавливает 8-й бит символа, посылая 128 плюс код символа. Использует строку состояния терминала; только для терминалов, поддерживающих такую возможность и имеющих соответствующую информацию в БД termcap или terminfo. Разрешает трансляцию 8-битных символов. Предполагает, что на экране используется набор символов IBM PC. Включает/отключает использование экранных атрибутов reverse (обратного видео) и highlight (выделения части текста). По умолчанию устанавливается -a on, хотя существуют терминалы, для которых это недопустимо, т.е. необходнмо^адать -a off. Перекрывает значение переменной окружения TERM.
II. Команды 455 -с on/off Включает/отключаег поддержку цвета в стиле ANSI. Некоторые терминалы, например консоль Linux, поддерживают цвет со стандартными управляющими последовательностями ANSI. Поскольку явная поддержка цвета в termcap отсутствует, эти управляющие последовательности встроены в minicom. Хотя по умолчанию устанавливается -с off. -S script На старте запускает указанный сценарий. Правда, передача имени и пароля пользователя в сценарии не поддерживается. Если вы также задаете опцию -d, сценарий должен быть запущен до звонка, определяя элементы для опции -d. -d entry Сразу после запуска выполняет звонок по указанному номеру из телефонной книги (из каталога дозвона). Можно указать числовой индекс или подстроку с именем элемента. Можно также указать несколько имен или индексов, разделенных запятыми. -р pty Использует псевдотерминал. Эта опция перекрывает терминальный порт, определенный в конфигурационном файле, что допускается лишь при задании псевдотерминала. Параметр pty должен быть задан в виде < /dev/>tty[p-z][0-f]. -С capturefile Открывает при запуске указанный файл захвата (файл с захваченным содержимым экрана). -8 Пропускает 8-битные символы без каких-либо модификаций. Этот режим пригоден для символов японского языка. Аргумент configuration задает используемый файл конфигурации. Все перечисленные опции могут быть определены в переменной окружения MINICOM, но в дальнейшем перекрыты значениями из командной строки. Переменная LIBDIR определяет местонахождение конфигурационных файлов и файла minicom.users. Последний разрешает пользователям доступ к конфигурационному файлу программы minicom. По умолчанию LIBDIR установлена в значение /etc. Ctrl+A - основная комбинация minicom. Если вы нажимаете Ctrl+A, а затем Z, на экране возникает перечень команд minicom. Для выполнения других команд поступаете аналогично: сначала нажимаете Ctrl+A, a затем соответствующую односимвольную команду. Пример Если первоначально программу minicom запускает обычный пользователь, то результат может быть следующий: $ minicom minicom: there is no global configuration file /etc/minirc.dfl Ask your sysadm to create one (with minicom -в). S Зарегистрируйтесь как суперпользователь и наберите: # minicom -s Программа minicom запущена и позволяет выполнить различные настройки. Меню Modem and dialing позволяет установить команды инициализации модема. Нажмите клавишу А, чтобы поменять строку инициализации модема. Программа установит курсор на первой строке. Можно применить клавишу Backspace, чтобы отредактиро-
456 II Комаццы вать строку, а затем набрать АТ-команду для инициализации вашего модема. Для возврата в главное меню нажмите Enter. и, root@localhost.localdomein:/root - п .X Шзйл Правка Settings Справка г rj i.-_.л Filenames and paths File transfer protocols Serial ort setu Modem and diali Screen and keyboard Save setup as df1 Save setup as.. Exit Exit from Mihicom Л 1 J / Выберите пункт Serial port setup. В возникшем меню нажмите В, чтобы поменять местоположение lock-файла на /var/lock/minicom, ибо /var/lock, заданный по умолчанию, не работает, так как это не файл, а каталог. Чтобы одновременно не более одного пользователя имело доступ к последовательному порту, требуется устанавливать lock-файл. Если все изменения проведены, спуститесь к пункту Save setup as dfl (сохранение конфигурации по умолчанию) и нажмите Enter. По умолчанию minicom сохраняет установки в файле /etc/minirc.dfl. Выбрав Exit from Minicom. можно выйти из программы. Чтобы minicom мог запустить обычный пользователь, необходимо проделать следующее: Q добавить строку со словом ALL (все) в файл /etc/minicom.users Q набрать команду chmod o+w /dev/ttySO, дающую каждому доступ по записи к порту СОМ1 (см. приложение II), если модем установили на этот порт Q связать /dev/modem и соответствующий последовательный порт с помощью команды In -s /dev/ttySO /dev/modem. mkbootdisk - создает отдельную загрузочную дискету для запуска системы. Синтаксис mkbootdisk [-version] [-noprompt] [-verboseH—mkinitrdargs argsi [—device devicefile] kernel Загрузочная дискета включает начальный образ псевдодиска ramdisk, хранящегося в памяти, с него загружаются любые необходимые системе SCSI-модули Программное обеспечение загрузочной дискеты отыскивает корневую файловую систему ориентируясь по содержимому /etc/fstab. Единственный необходимый аргумент, версия ядра kernel, запоминается на дискете
II. Команды 457 Опции —device devicefile Создает загрузочный образ на устройстве devicefile. Если опция —device отсутствует, использует /dev/fdO (НГМД). —mkinitrdargs args Передает mkinitrd указанные аргументы args. Можно не указывать никаких аргументов. Программа mkinitrd используется для создания начального образа псевдодиска (ramdisk). —noprompt Обычно mkbootdisk предлагает пользователю вставить дискету и ждет его подтверждения для продолжения работы. Если указана опция —noprompt, не выводит никаких приглашений. —verbose Подробно информирует о происходящем. —version Выводит информацию о версии программы и завершает ее работу. Пример t mkbootdisk 2.2.14-6.1.1 Insert a disk in /dev/fdO. Any information on the disk will be lost. Press <Enter> to continue or "C to abort: t ITlKGir - соз1ает каталоги с указанными именами. К. Синтаксис mkdir [option].. .паше Если одно из имен name является именем существующего файла, а не каталога, направляет предупреждение в стандартный файл ошибок и после обработки оставшихся имен завершается с кодом 1. Выполняет то же самое, если name — имя существующего каталога, а опция -р не указана. Опции -m mode, — mode= mode Устанавливает режим созданных каталогов в значение mode (в символьной форме, как в chmod) минус текущие биты umask для точки возврата (в операционную систему при завершении прикладной задачи). -р, —parents Для каждого аргумента создает любые отсутствующие родительские каталоги (системный вызов umask, модифицирующая маска u+wxV Игнорирует аргументы существующих каталогов. —verbose Комментирует создание каждого каталога, что полезно совместно с опцией -р. Пример $ mkdir dos
И Ко«аццы ITlke2fS - создает вторую расширенную файловую систему Linux. См. команду mkfs.cxt3 mkfifo - создает IFO. Синтаксис mkfifo [option! паше... FIFO (First in - First out, первым вошел - первым вышел) - это файл специального типа, позволяющий взаимодействовать отдельным процессам. Один процесс открывает файл FIFO для записи, а другой - для чтения, поток данных как бы течет по каналу от одного процесса к другому. Именно поэтому FIFO иногда называют именованный канал (поток). Опции -m mode, —mode=mode Устанавливает режим создаваемых файлов в значение mode: символьное значение, как в chmod; использует a=rw (чтение и запись для каждого) минус биты, установленные в umask, как при возврате в операционную систему. Созданный FIFO получает имя пате. mkfontdir - создает в указанном каталоге индекс файлов-шрифтов системы X. Синтаксис mkfontdir [-r] [-p prefix] [-e endir]... [ — ][dir_name ] В каждом указанном каталоге dirname отыскивает все файлы шрифтов, поименованные FONT. Конвертирует символы имен файлов в символы нижнего регистра и далее использует как имена шрифтов, информация о каждом записывается в файл fonts.dir указаного каталога. Х-сервер и сервер шрифтов используют файл fonts.dir для нахождения файлов шрифтов. Разновидности файлов шрифтов зависят от параметров конфигурации, но обычно включают форматы PCF (суффикс .pcf), SNF (.snf) и BDF (.bdf). Рели шрифт существует в нескольких форматах, mkfontdir сначала будет выбирать PVF. <атсм SNF и. наконец, BDF. Первая строка fonts.dir содержит количество шрифтов в файле, в остальных ei роках перечислены собственно шрифты: отдельная строка для каждого шрифта, в кою-
II. Команды 459 рой имеются два поля. Первое ич полей является именем файла шрифтов, далее череч пробел находится имя шрифта. Файлы масштабируемых шрифтов обычно не включают имя шрифта; файл fonts.scale содержит масштабируемые шрифты каталога. Шрифты, перечисленные в нем, копируются в fonts.dir в том же формате, что файл fonts.dir. В каталогах по маршруту шрифтов можно встретить файлы fonts.alias, используемые для отображения новых имен в существующие шрифты. Первое поле таких файлов содержит псевдонимы, а второе, отделяемое пробелом от первого, - шаблоны имен шрифтов. Строки, начинающиеся с восклицательного знака, рассматриваются как комментарии. ци -е endir Указывает каталог, содержащий файлы кодировок. Опция может встречаться многократно, при этом будут считываться все заданные каталоги. Порядок элементов существенен. -р prefix Указывает префикс, добавляемый к маршрутам имен файлов при записи их в файл cncodings.dir. -г При записи в файл cncodings.dir оставляет каталоги, содержащие кодировки шрифтов, в их относительном формате . По умолчанию относительные каталоги преобразуются в абсолютные путем добавления текущего каталога. Отмечает конец опций. mKiS - создает новую файловую систему Linux. К. Синтаксис mkfs [-V][-t fstype]\-v][-c]l-l filename\[fs-option\ device-or-mount-point [blocks] mkfs строит файловую систему на некотором устройстве, обычно в разделе жесткого диска. В качестве аргумента device-or-mount-point указывается либо имя устройства (/dev/hdal, /dev/sdb2 и аналогичные), либо точка монтирования (каталоги /, /user, /home). Количество блоков, выделяемых для использования файловой системой, указывается аргументом blocks. А вообще mkfs - это просто конечный интерфейс к доступным под Linux построителям файловых систем, вторую часть сложных имен (mktsjstype) которых опрецеля- ет вызываемый построитель. Опции -V Подробно комментирует происходящее, включая пес специфические команды файловой системы. -t fstype Указывает тип новой файловой системы, по умолчанию принимается ext2.
460 II Команды fs-option Передает построй гелю файловой системы специфические опции (в ви ад списка). _с Перед построением файловой системы проверяет наличие сбойных блоков на устройстве. -1 filename Считывает список сбойных блоков из указанного файла filename. Возможно, предварительно проводилась проверка с помощью badblocks или аналогичной утилиты и был составлен подобный список. -V Подробно комментирует происходящее. Пример t mkfs -t ext2 /dev/hda3 i Создает файловую систему типа cxt2 в разделе /dcv/hda3 (первый жесткий диск типа IDE). mklS.GXto - создает ф.иловую систему ext2/3. Синтаксис mke2fs [-c|-l filename](-b block-size](-f fragment-size) [-i bytes-per-inode][-j]]-J journal-options] [-N number-of-inodes] [-n] [-ш reserved-blocks-percentage] I-o creator-os] [-0 feature^, ]][-q] [-r fs-revision-level]l-R raid-options] I-v] [-F] [-L volume-label] [-M last-mounted-directory]]-S]l-1 fileaystem-type]\-V] device [blocks-count] mke2fs -0 journal_dev [-b block-size][-L volume-label][-n][-q](-v) external-journal [blocks-count] mke2fs используется для создания файловой системы ext2 или ext3 на устройстве device - это обычно раздел жесткого диска, которому соответствует специальный файл устройства (/dev/hdAX). Аргумент blocks-count задает количество блоков устройства, на котором создается файловая система; если упомянутый аргумент отсутствует, mkc2fs автоматически устанавливает размер файловой системы. Если вызывается как mkfs.ext3, создается журнал, как если бы была задана опция -j. Файловая система ext3 - обновление ext2, которая в течение ряда лет была одной из самых популярных файловых систем Linux. Вы можете выбрать ext3 во время полной генерации системы или автоматически трансформировать вашу теперешнюю систему в файловую систему ext3, когда будете обновлять при помощи текущей версии Linux. Все инструментальные средства для ext2 сегодня обновлены в Linux и работают также с ext3. Файловая система ext3, предлагаемая Red Hat Linux, полностью совместима с ext2. Однако ext3 обладает целым рядом уникальных свойств: • Потенциально возможно восстановить удаленный из cxt3 файл, что вообще невозможно в файловой системе ReiserFS (изначально используемой в дистрибутивах SuSE и Mandrake).
II. Команды 461 • Может работать с файлами в 2 Тбайт, каталогами в 2 Тбаит и с именами файлов длиной до 255 (и больше) символов. • Может очень эффективно распределять и использовать пустое пространство и вовсе не нуждается в дефрагментации. • Подобно друпш файловым системам с журналированием традиционная проверка (fsck) не является обязательной на файловой системе ext3, что составляет немалую экономию времени на терабайтных дисках. • Можно выбрать разные опции журналирования (три режима) в зависимости от потребностей: writeback Разрешает старым данным оставаться в системе, достигая максимальной скорости из возможных; не планирует никаких записей данных, но разрешает 30-секундный код в ядре для опорожнения буфера. Данные могут быть записаны в основную файловую систему после того, как их метаданные уже зафиксированы в журнале. И хотя это самый скоростной режим, в этом случае после сбоя и восстановления журнала у вас могут возникнуть старые данные. ordered Поддерживает согласованность данных, частично жертвуя скоростью; этот режим принят в Red Hat по умолчанию. Все данные записываются в основную файловую систему до того, как их метаданные будут зафиксированы в журнале. journal Требует больше места на диске для занесения в журнал необходимой информации. Можно наблюдать снижение производительности, так как данные записываются дважды, хотя существуют некоторые возможности, благодаря которым можно синхронизировать запись данных, как в операциях БД. Подобный способ подстраховки данных аналогичен методам, применяемым в современных СУБД. Это самый медленный, хотя и самый безопасный режим, потому что данные записываются в журнал до того, как они будут записаны в обычную файловую систему. Режим можно выбрать путем задания соответствующей опции монтирования (data=journal/data=ordered/data=writeback) в файле /etc/fstab, хотя большинство из нас вполне устроит принятый по умолчанию вариант. Опции -b block-size Указывает размер блоков в байтах. Действующие размеры блоков составляют 1024, 2048 и 4096. Если block-size не указан, mkc2fs определяет размер блока, исходя из размера и ожидаемого использования файловой системы (см. опцию -Т). -с Перед созданием файловой системы проверяет устройство на наличие сбойных блоков п режиме "только для чтения". Если эта опция задана дважды, применяется более медленный, разрушающий тест в режиме "чтение-запись". -f fragment-size Указывает размер фрагмен юн в бантах.
462 II Команды -i byles-per-inode Указывает соотношение bytes/inode (бай i ы/дескриптор). mke2fs создает индексный дескриптор для каждой последовательности байтов иа диске. Для больших значений этого коэффициента будет создаваться несколько дескрипторов, хотя, вообще говоря, его значение не может быть меньше, чем размер блока файловой системы. Невозможно увеличить допустимое количество дескрипторов файловой системы после ее создания. -j Создает файловую систему с журналом (ext3). Если не задана опция -J, для создания журнала, сооветствующего размеру файловой системы, внутри которой он сохраняется, используются принятые по умолчанию параметры. Чтобы использовать подобный журнал, необходимо иметь ядро с поддержкой файловой системы ext3. -J journal-options Создает журнал ext3, используя опции, задаваемые в командной строке и разделенные запятыми. Знаки равенства (=) позволяют определять значения аргументов. Поддерживаются следующие журнальные опции (задается одна из этих двух): size=journal-size Создает внутренний журнал указанного ргаиерйjournal-size в мегабайтах; размер журнала должен, по меньшей мере, составлять 1024 блока файловой системы (1 Мбайт, если используются блоки размером I Кбайт, 4 Мбайт, если используются блоки размером 4 Кбайт, и т.д.) и не может превышать 102400 блоков файловой системы. device=external-journal Подключает данную файловую систему к блокам устройства внешнего журнала, размещенного в external-journal. Внешний журнал должен быть предварительно создан с использованием следующей команды: mke2fs -о journal_dev external-journal Причем, external-journal необходимо создать с тем же размером блока, как и у новой файловой системы. Вместо непосредственного указания имени устройства журнала может быть задана метка тома в виде LABEL=/oie/ или UUID=[/[//D. хранимый в суперблоке ext2 при запуске журнала. Чтобы отобразить метку тома устройства журнала или UUID, применяется команда dumpe2fs (см. также опцию -L команды iune2fs). -п Не создает реальную файловую систему, а только выдаст протокол ее создания. -N number-of-inodes Позволяет непосредственно задавать количество number-of-inodes iec- крипторов, предназначенных для файловой системы, перекрывая вычисленное по умолчанию количество.
II. Команды 463 -О fealure[,...] Создает файловую систему с набором перечисленных опций feature, поддерживаются следующие их значения: sparsesuper Создает файловую систему лишь с несколькими копиями суперблоков, что сохраняет пространство на больших файловых системах. filetype Указывает файловой системе хранить информацию о типе файла в элементах каталога. hasjournal Создает журнал ext3, как в случае задания опции -j. j ournaldev Создает внешний журнал ext3 на заданном устройстве external-journal, а не в обычной файловой системе Причем файловая система журнала должна создаваться с тем же размером блока, что и использующие ее файловые системы. -о creator-os Вручную перекрывает заданное по умолчанию выражение для поля "creator os" (создатель OS) файловой системы. -1 filename Считывает список сбойных блоков из файла_/1/епа/ие. -m reserved-blocks-percentage Указывает количество блоков, зарезервированное для суперпользователя, в процентах, по умолчанию принято 5%. -q Выполняет создание без вывода сообщений. -v Выводит подробную информацию. -F Принуждает mke2fs выполняться, даже если указанное устройство не является блочно-специальным или возникает как смонтированное. -L volume-label Устанавливает volume-label в качестве метки тома для файловой системы. -М last-mounted-dlrectory Устанавливает для файловой системы последний смонтированный каталог, что полезно утилитам, отключающим последний смонтированный каталог, для определения подключения файловой системы. -г fs-revision-level Устанавливает версию fs-revision-level для новой файловой системы. -R raid-options Устанавливает RAID-опции для файловой системы, они обычно разделяются запятыми и могут принимать необходимый параметр, используя знак равенства. В настоящее время поддерживается единственный параметр stride (количество блоков в пространстве RAID). -S Записывает только суперблок и групповые дескрипторы. Это полезно в случае возможных повреждений файловой системы, при ->том mkc2fs повторно инициализирует суперблок и групповые дескрипторы, не трогая ничего более.
4b4 II Комаеды -T filesyslem-tvpe Указывает предполагаемое использование файловой системы, полому mke2fs может автомагически определить оптимальные параметры файловой системы. Поддерживает такие типы файловых систем: news один дескриптор на блок в 4 Кбайт largefile один дескриптор на 1 Мбайт largefile4 один дескриптор на 4 Мбайт -V Выводит версию утилиты mke2fs и завершает ее работу. Примеры Прежде всего, создадим файловую систему для тестирования: в данном случае файловую систему внутри файла. Поскольку большинство из нас не имеет запасного компьютера или жесткого диска для тестирования и опробования разных (подчас опасных) команд, мы можем создать файл с образом требуемой файловой системы и монтировать ее, используя файловую систему типа loopback (по типу контура обратной связи, или шлейфа, для кольцевой тестовой проверки) - специальную файловую систему, позволяющую реализовать этот "трюк". Сначала создадим файл объемом 5 Мбайт с блоками размером в 1024 байт, для этого понадобится 5000 блоков размером 1 Кбайт (1024 байт): # dd if=/dev/zero of=/tmp/lutest.img bs=1024 count=5000 5000+0 records in 5000+0 records out * А сейчас с помощью команды file проверим новый файл: t file /tmp/lutest.img /tmp/lutest.img: data t А сейчас с помощью команды losetup нужно сделать так, чтобы вместо ASCII- файла система рассматривала данный файл в качестве блочного устройства: I losetup /dev/loopO /tmp/lutest.img t И вот теперь можно форматировать данный файл как файловую систему: t mkfs.ext3 /dev/loopO mke2fs 1.32 (09-Nov-2002) Filesystem label= OS type: Linux Block size=1024 (log=0) Fragment size=1024 (log=0) 1256 inodes, 5000 blocks 250 blocks (5.00%) reserved for the super user First data block=l 1 block group 8192 blockB per group, 8192 fragments per group 1256 inodes per group Writing inode tables: done
II. Команды 465 Creating journal (1024 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 29 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. Эту файловую систему можно смонтировать и посмотреть ее содержимое: t mount /dev/loopO Rabl t Is -1 Rabl total 12 drwx 2 root root 12288 Oct 13 21:22 lost+found < Как и положено, в файловой системе был создан каталог lost+found. mkinitrd - создает образ начального псевдодиска (ramdisk) для предварительно загружаемых модулей. Синтаксис mkinitrd (-fv] [—ifneeded] [—vith=module] [—preload=jnoduie] [—omit-scsi-modules] [—omit-raid-modules] [—version] [—fstab=fs£aJb] image kernel-version mkinitrd создает образы файловых систем, пригодных для использования под Linux в качестве начальных ramdisk (псевдодисков — дисков, размещенных в памяти). Подобные образы image необходимы для предварительной загрузки модулей блочных устройств, таких как SCSI или RAID, без которых невозможно осуществить доступ к корневой файловой системе, расположенной на подобных устройствах. Поэтому mkinitrd автоматически загружает все элементы SCSI-адаптеров из файла /etc/conf.modules, необходимые для использования ядер, применяющих модули SCSI-устройств. Любые опции, имеющиеся в /etc/conf.modules, будут передаваться модулям, загруженным в начальный ramdisk. С помощью аргумента kernel-version задается версия ядра. Если корневая система расположена на loop-устройстве (например, /deWloopO). mkinitrd пытается построить initrd (сценарий инициализации) и определить в нем loopback-file. Чтобы это осуществить, fstab должен содержать примерно следующий комментарий: I LOOP0: /dev/hdal vfat /linujt/rootfs Здесь LOOP0 - имя прописными буквами loop-устройства, которое должно быть сконфигурировано. Далее следует устройство /dev/hdal. содержащее файловую систему с loopback-образом, тип файловой системы и полный маршрут к loopback-образу (/linux/rootfs). Если файловая система модульная, initrd автоматически добавит загружаемые модули к образу initrd. Опции -f Позволяет mkinitrd перекрыть уже существующий образ. --fsiab-fslab Использует указанный файл [slab (обычно /ctc/fstab) тля автоматическою определения пша фанлопой системы.
4ЬЬ II Команды —ifheeded Строит 3ai ружаемый образ лишь в том случае, если действительно существуют модули, которые должны быть загружены во время начальной загрузки системы. —omit-scsi-modules Не загружает никакие SCSI-модули, в том числе scsi_mod и sd_mod, даже если они присутствуют. —omit-raid-modules Не загружает никакие RAID-модули, даже описанные в /etc/fstab и /etc/raidtab. —preload=moc/u/e Загружает указанный модуль module в образ начального ramdisk. Этот модуль должен быть загружен до любого SCSI-модуля, указанного в /etc/conf.modules. Данная опция может при необходимости использоваться многократно. -v Подробно комментирует процесс создания образа. —version Выводит информацию о версии mkinitrd и завершает ее работу. ~v/ith=module Загружает указанный модуль module в образ начального ramdisk. Этот модуль будет загружен после всех SCSI-модулей, перечисленных в /etc/conf.modules. Данная опция может при необходимости использоваться многократно. Созданный ramdisk загружается загрузчиком операционной системы, таким, как LILO, и становится доступным ядру сразу после загрузки образа. Этот образ отвечает за загрузку необходимого SCSI-адаптера и позволяет ядру смонтировать корневую файловую систему. Пример Замещение текущего ядра 2.х.хх-х его новой версией выполняется с помощью следующей команды: I mkinitrd /boot/initrd-2.x.xx-x.img 2.х.хх-х t Таким образом создается файл образа начального ramdisk. Нужно убедиться (можно с помощью Is), что этот файл действительно создан в каталоге /boot. После этого необходимо модифицировать файл /etc/lilo.conf, чтобы перестроить LILO на новое ядро. Вы не должны перезагружать систему, пока не переконфигурируете LILO. С помощью произвольного текстового редактора добавьте новый сегмент к вашему файлу /etc/lilo.conf: image=/boot/vmlinuz-2.х.хх-х label=newlinux root=/dev/hdal (возможно /dev/Bdal) initrd=/boot/initrd-2.x.xx-x.img read-only append= "тет-Эбн"
II. Команды 467 Последняя строка снимает ограничения памяти (64М, или 64 Мбайт) Linux, устанавливая новое значение 96М. Затем необходимо сохранить файл /ttc/lilo.conf и запустить /sbin/lilo Это заставит загрузчик LILO прочесть новое содержимое файла конфигурации и обновить загрузочный сектор соответствующего корневого раздела. mkisofs - создает образ файловой системы для использования на CD-ROM. Синтаксис mkisofs [options]l-o filename] pathspec [pathspec ...] Команда mkisofs создает гибридную файловую систему (ISO9660/JOLIET/HFS). Файловая система, обычно используемая на CD-ROM, известна как ISO9660. Каждая операционная система транслирует файловую систему ISO9660 в свою "родную" файловую систему, хотя и с некоторыми ограничениями. Были создано несколько расширений, удовлетворяющих некоторым специальным нуждам. Расширение Rock Ridge предоставляет длинные имена файлов и Unix-подобные символические ссылки. Расширение Joliet разрешает символы Unicode и длинные имена файлов, полезные, когда имеешь дело не с англоязычными языками. Компакт-диски El Torito содержат загружаемый образ с подходящей BIOS, что дает возможность загружать операционную систему прямо с компакт-диска. Команда mkisofs может сгенерировать подлинную (или разделяемую) гибридную систему HFS. Одни и те же файлы могут выглядеть как файлы HFS, когда получаешь доступ с компьютера Macintosh, и как файлы ISO9660, когда обращаешься с других машин. В Linux создание компакт-диска происходит в два этапа: сначала вы создаете образ диска в формате ISO9660, а затем "прожигаете", или записываете, этот образ на диск. Команда mkisofs выполняет мгновенный "снимок" заданного дерева каталогов и генерирует двоичный образ, соответствующий файловой системе ISO9660 или HFS, для записи на блочное устройство. Аргумент pathspec определяет маршрут к дереву каталогов, которое будет копироваться в файловую систему ISO9660. Может быть задано несколько маршрутов, и mkisofs будет сливать файлы, найденные по разным маршрутам, формируя CD-образ. ци -A application id Указывает текстовую строку, которая будет записана в заголовок тома. Такая строка характеризует приложение, записываемое на диск. Упомянутый параметр также может быть установлен в конфигурационном файле .mkisofsrc в виде APl>]=applicatinn_id. -al low-lowercase Разрешает строчные символы в именах файлов, хотя это и противоречит стандарту ISO9660.
468 II Команды -allow-multidot Разрешает более одной точки в именах файлов. Эта опция не имеет никакого отношения к идущей впереди точке, которая может быть разрешена отдельно с помощью опции -L. -biblio filename Указывает имя файла с библиографией. Упомянутый параметр также может быть установлен в конфигурационном файле .mkisofsrc в виде BlBLIO=/i/ena»ie. -gid gid Перекрывает идентификатор группы исходных файлов указанным значением gid. -1 Разрешает полные имена файлов длиной в 31 символ. В ISO9660 имя файла должно быть в формате 8.3. - J Генерирует записи каталога Joliet в дополнение к обычным именам файлов формата ISO9660, так что все, отдающие предпочтение Windows, могут считывать компакт-диск. -L Разрешает именам файлов в формате ISO9660 начинаться с точки. Обычно идущая впереди точка заменяется символом подчеркивания. -log-file logjile Переадресует все ошибки, предупреждения и информационные сообщения в файл регистрации. -о filename Определяет имя файла, в который записывается образ файловой системы 1SO9660. -R Генерирует записи SUSP и RR, используя протокол Rock Ridge, чтобы в дальнейшем описать файлы на данной файловой системе ISO9660. Команда mkisofs может генерировать записи SUSP (System Use Sharing Protocol - протокола раздельного использования в системах), указываемые протоколом обмена RR (Rock Ridge). Эта особенность применяется для того, чтобы позже описать файлы из файловой системы ISO9660 для хоста Unix, предоставляя информацию по длинным именам, UID/GID, полномочиям, символическим ссылкам, блочным и символьным устройствам. -г Подобна опции -R, но устанавливает право владения и режимы в ботсе полезные значения, а именно: UID и G1D - в ноль; полномочия чтения на все файлы и каталоги; если для файла установлен хоть один бит выполнения, устанавливает все биты выполнения; очищает все биты записи и биты специальных режимов, если последние установлены. -uid uid Перекрывает UID исходных файлов указанным значением uid. -v В ходе выполнения отображает подробные сообщения. -х path Исключает маршрут из состапа записываемых на компакт-писк. Этот флаг с разными параметрами может встречаться в командном строке неоднократно, исключая одновременно несколько маршр) гов.
II. Команды Приме• А вот применение команды mkisofs для создания ISO-образа: $ mkisofs -r -v -J -1 -о /tmp/speccd.iso Rabl mkisofs 2.0 (i686-pc-linux-gnu) Scanning Rabl Scanning Rabl/recycled Scanning Rabl/recycled/dd63 Scanning Rabl/recycled/dd64 18.32% done, estimate finish Tue Sep 30 15:33:31 2003 18.65* done, estimate finish Tue Sep 30 15:33:32 2003 18.98% done, estimate finish Tue Sep 30 15:33:33 2003 31.08% done, estimate finish Toe Oct 30 15:33:43 2003 72.96% done, estimate finish Tue Oct 30 15:34:19 2003 mknod - создает специальные файлы. Синтаксис mknod [option].. .name type [major minor] Создает FIFO (First In, First Out - первым вошел, первым вышел, определяет способ обслуживания в порядке поступления запросов в очередь, подробнее см. mkfifo), символьно-специальные и блочно-специальные файлы с указанным именем пате заданного типа type. Аргумент type может принимать такие значения: р FIFO b блочно-специальный файл с символьно-специальный файл При создании блочно-специального или символьно-специального файла могут быть также указаны главный (major) и дополнительный (minor) номера устройств, идущие вслед за типом файла (см. файл /proc/partitions и приложение 11). Опции -m mode, —mode=mode Устанавливает режим создаваемых файлов в значение mode: символьное значение, как в chmod; использует a=rw (чтение и запись для каждого) минус биты umask, как при возврате в операционную систему, т.е. значение маски, используемой для создания файлов). Примеры Вот как выглядит команда для создания нового терминального устройства: t mknod -m 660 /dev/ttySO с 4 64 I /dev/ttySO указывает перпый последовательный порт компьютера (COMI). символ с уведомляет, что терминал является символьным ус тройством (почти все терминалы
II Команды являются символьными устройствами). Главный номер устройсгва установлен в значение 4, дополнительный - в 64. Для второго последовательного порта (COM2) команда должна быть таковой: # mknod -m 660 /dev/ttySl с 4 65 ITlkreiSerfS - создает в Linux файловую систему Reis- Синтаксис mkreiserfs 1-dfV] (-b|— block-size n)[-h|—hash hash] [-u|— uuid uuid] y-l —label label] I—format format] [-j |—journal-device file] t-s —journal-size n][-o|—journal-offset n] (-t —transaction-max-size n] device [filesystem-size] В файловой системе ReiserFS (тоже с журналированием) небольшие файлы поддерживаются более эффективно, чем в ext3. И хотя она пригодна для использования в качестве корневой файловой системы, официально Red Hat Linux такую возможность не поддерживает. И во время инсталляции системы Red Hat не предлагает вам отформатировать некорневые разделы под ReiserFS. Совсем другое дело дистрибутивы SuSE и Mandrake, поддерживающие загрузку с файловой системы ReiserFS. Файловая система ReiserFS подверглась наиболее существенным изменениям с приходом Reiser4. Улучшения были достигнуты в самых разных областях: максимальное число каталогов, файлов, ссылок, размеры отдельных файлов и всей файловой системы (18 Тбайт). Другие улучшения включают повышенную производительность и шифрование. Команда mkreiserfs создает файловую систему на устройстве device (обычно в разделе диска). Размер filesystem-size создаваемой файловой системы задается в блоках, если этот аргумент пропущен, mkreiserfs определяет его автоматически. Опции -Ь | —block-size n Задает размер блока в байтах, сейчас пока только 4096. -h | —hash hash Указывает имя хэш-функции, по которой будет производиться сортировка имен файлов в каталогах. Выбирается одно из следующих имен: г5 (по умолчанию), rupasov, tea. —format formal Указывает, какой должен быть формат новой файловой системы. Может быть выбран один из двух: 3.5 или 3.6. Если никакой формат не указан, mkreiserfs создает файловую систему в формате 3.6 для ядра 2.4 и в формате 3.5 - для ядра 2.2; отказывается создапать файловую систему под всеми другими ядрами. -и | —uuid uuid Устанавливает UUID данной файловом системы в укачанное значение (см. команду uuidgcn), состоящее из наборов шесгнадцагернчных цифр, разделенных дефисами. Если эта опция пропущена, mkreiserfs генерирует новое значение.
II. Команды 471 -1 | --label label Устанавливает метку тома данной файловой системы; максимальная длина метки достигает 16 символов. Если задаваемая длина метки превосходит 16 символов, обрезает ее. -j | --journal-device/i/e Определяет имя блочного устройства, где будет располагаться журнал файловой системы. -о | --journal-offset и Определяет смещение (по умолчанию - нулевое), откуда начинается журнал, расположенный на отдельном устройстве. Эта опция не оказывает никакого влияния, когда журнал расположен на основном устройстве. -s | —journal-size я Определяет размер журнала в блоках. Когда журнал расположен на отдельном устройстве, по умолчанию его размер равен количеству блоков самого устройства. Когда журнал расположен иа основном устройстве, по умолчанию его размер составляет 8193 и может достигать 32749 для блоков размером 4 Кбайт. Минимальный размер в обоих случаях равен 513. -t | --transaction-max-size n Задает параметр, определяющий максимальное количество блоков журнала на транзакцию. Максимально возможное значение достигает 1024 и должно быть меньше половины размера всего журнала. -f Вынуждает mkreiserfs продолжать работу даже в тех случаях, когда устройство является полным диском, выглядит смонтированным или не относится к блочному устройству. -d В процессе работы выводит отладочную информацию. -V Выводит информацию о версии программы и завершает ее выполнение. Пример t mkreiserfs /dev/loopO < mkreiserfs, 2002 > reiserfsprogs 3.6.4 mkreiserfs: Guessing about desired format., mkreiserfs: Kernel 2.4.20-8 is running. Format 3.6 with standard journal Команда mkreiserfs запушена под ядром 2.4 и поэтому для файловой системы был выбран формат 3.6.
II Команды mkSWap - создает обл-. • ь своппинга в Linux. Синтаксис mkswap [-с]\-vN][-£1[-р psz] device [size] mkswap устанавливает область своппинга, или подкачки, на устройстве device или же в файле. Такая область необходима в многозадачной операционной системе, которая периодически записывает во внешнюю память содержимое освобождаемой страницы или сегмента виргуальной памяти, а иногда и образ задачи, чтобы затем, при необходимости, вновь вернуть их. Обычно область своппинга - это раздел диска, используемый Linux как расширение оперативной памяти компьютера Так что вначале следует создать раздел своппинга с помощью команды fdisk или аналогичных средств, что, как правило, выполняется еще при инсталляции системы. Далее необходимо применить mkswap, чтобы инициализировать раздел своппинга. После создания области подкачки ее необходимо задействовать с помощью команды swapon. Обычно аргумент device - это раздел диска (/dev/hda4, /dev/sdb3 и т.п.), но может также быть и файлом. Разрешается иметь до восьми разделов подкачки, причем размер раздела может достигать 2 Гбайт. Опции -с Перед созданием области своппинга проверяет блочное устройство в поисках сбойных блоков. -р psz Указывает используемый размер страницы. 4096 и 8192—типичные значения psz. Впрочем, этот параметр вовсе не обязательно задавать. -v0 Создает область своппинга в старом стиле. -vl. Создает область своппинга в новом стиле. Если никакая опция -v не за- (ц) дана, создает область своппинга в старом стиле. Заголовок нового стиля даже и не соприкасается с первым блоком. Способ описания страниц в старом стиле расточителен и ограничивал размер области подкачки. Максимально используемый размер области своппинга в новом стиле зависит лишь от архитектуры компьютера. -f Позволяет создать область своппинга, превышающую размеры файла или раздела, предназначенного для этих целей. Аргумент size указывает размер области подкачки в блоках, размер каждого из которых составляет 1024 байт. Оставлен этот аргумент лишь для совместимости. Если он опущен, mkswap полностью использует выделенный раздел диска или файл. Если принято решение для своппинга использовать файл, его необходимо создать до запуска mkswap. Пример Файл /proc/swaps содержит информацию об исполмусмых областях своппинга вашей системы:
II. Команды 473 $ cat /proc/swaps Filename" Type Size Used Priority /dev/hda6 partition 42296 10392 -1 $ Любой пользователь может поинтересоваться размером области подкачки, но менять ее должен лишь суперпользователь. А следующие команды показывают, как в качестве области своппинга использовать файл my swap: t dd if=/dev/zero of=myswap bs=1024 count=65536 65536+0 входных записей 65536+0 выходных записей t Команда ср не пригодна для создания такого файла. # mkswap -с myswap Setting up swapspace version 0, size=67104768 bytes t И не забудьте о команде swapon ! modinfo - выво1ИТ информа ию о мод ле ядра. Синтаксис modinfo [option] module_file Команда modinfo анализирует заданный объектный файл modulejile, ассоциирующийся с модулем ядра, и сообщает всю известную о нем информацию, по умолчанию (без каких-либо опций) выводит имя файла (полный маршрут), описание, сведения об авторе и лицензии, поддерживаемые модулем параметры. Опции -a, —author Сообщает об авторе модуля. -d, --description Выводит описание модуля. -f, --format formats/ring Позволяет задать необязательную строку формата, используемого для извлечения значений из секции ELF в modulejile, содержащей информацию о модуле. Замещаемые элементы формата содержат символ процента и последующее имя тега в фигурных скобках. Вот некоторые применяемые теги: %{filename} всегда поддерживаемое имя файла, даже если рассматриваемый модуль не имеет никакой секции modinfo %{kcrnel_vcrsion} версия ядра ОС, для которой был скомпилирован рассматриваемый мочуль %{iising_chccksums} расширяется в 1, если данный модуль содер жнт значение версии, в 0 - в противном случае
II Команды %p,%{parm} данная строка формата повторяется (на отдельной строке) для каждого известного параметра модуля и затем замещается описаниями параметров (по одному параметру на каждую повторяющуюся строку) %а, %{author} автор модуля %d, % {description} описание модуля %1, %{filename} имя файла %n, %{license} сведения о лицензии -h, -help Выводит краткие сведения об опциях программы и завершает ее -1, —license Сообщает сведения о лицензии модуля. -n, —filename Выводит имя модуля. -р, —parameters Сообщает поддерживаемые модулем параметры. -V, —version Сообщает версию modinfo. Примеры # modinfo jbd filename: /lib/modules/2.4.20-8/kernel/fs/jbd/jbd.o description: <none> author: <none> license: "GPL" t modinfo -p mousedev xres int, description "Horizontal screen resolution" yres int, description "Vertical screen resolution" I Модуль mousedev имеет два параметра: горизонтальная разрешающая способность экрана монитора (число точек по горизонтали) и вертикальная разрешающая способность экрана монитора (число точек по вертикали). Список модулей ядра можно получить с помощью команды Ismod. modprobe - осуществляет высокоуровневое управление загружаемыми модулями. Синтаксис modprobe [-adnqv)[-C config] nodule lsyabol=value ] modprobe [-adnqv][-C config][-t type] pattern modprobe -1 [-C config][-t type] pattern modprobe -с [-С config] modprobe -r [-dnv]|-C config]]module ] modprobe -V Утилиты modprobe и depmod предназначены облегчи гь пользователям, администраторам и распросгранителям дистрибу швов процесс управления модальным ядром.
II. Команды 475 Утилита modprobe использует файл зависимостей типа makefile, созданный dcpmod, для автоматической загрузки соответствующих модулей из набора модулей, доступных в предопределенных деревьях каталогов. modprobe применяется, чтобы загрузить набор модулей, единственный модуль, стек независимых модулей или все модули, помеченные указанным тегом. При автоматической загрузке всех базовых модулей руководствуется файлом зависимостей modules.dep. Если загрузка хотя бы одного из этих модулей завершается аварийно, весь стек модулей, загруженных во время текущего сеанса, будет автоматически выгружен. Существует два способа загрузки модулей. В первом из способов, называемом пробным режимом, modprobe пытается загрузить модуль из списка, определяемого шаблоном pattern. После успешной загрузки одного из модулей modprobe останавливается. Второй способ может быть использован для загрузки всех модулей списка. Опции -a, —all Загружает все модули, чьи имена совпадают с шаблоном, вместо того, чтобы останавливаться после первой успешной загрузки. -с, —showconfig Отображает текущую используемую конфигурацию. -d, —debug Дополнительно информирует о внутреннем представлении стека модулей. -k, —autoclean Устанавливает режим "autoclean" (автоматическая очистка) для загружаемых модулей (см. insmod). Эта опция совместно с опцией -q будет автоматически отправлена insmod. -1, —list Выводит список совпавших модулей. -n, —show He выполняя никаких действий, сообщает о могущих быть действиях. -q, —quiet He комментирует происходящие события. -г, —remove Удаляет модуль (стеки) или производит автоочистку в зависимости от того, какие модули заданы в командной строке. -s, — syslog Вместо стандартного файла ошибок помещает отчет в syslog. Эта опция будет автоматически отправлена insmod. -t, --type modulestype Только рассматривает модули указанного типа modulestvpe. -v, —version Выводит информацию о версии modprobe. -С, —config config Использует вместо /ctc/modules.conf указанный файл config.
II Команды ITIOgrify трансформирует изображения или последовательность изображений. Синтаксис mogrify {option...] file {{option...]file...] Эти трансформации включают: масштабирование изображения, вращение, ограничение цветов и др. Полученное изображение перекрывает оригинальное. Базовые опции -affinc matrix Предоставляет матрицу трансформации {sx,rx,ry,sy,tx,ty} для использования последующей опцией -draw или -transform. -antialias Выполняет фильтрацию-сглаживание - автоматическое удаление ступенчатости изображений, вызванной недостаточной разрешающей способностью экрана, а также производит сглаживание цветов. -background color Указывает цвет фона. -blur radiusxsigma При помощи гауссова оператора с заданным радиусом radius и стандартным отклонением sigma "размывает" (делает нерезким) данное изображение. -border widthxheight Окружает изображение цветной рамкой, используя геометрическую спецификацию (см. X). -bordercolor color Указывает цвет рамки. -cache threshold Подстраивает пороговое значение памяти (мегабайты), доступное видеокэшу. Пока не будет задействовано 80 Мбайт памяти, пикселы изображения хранятся в памяти. Последующие операции с пикселами переносятся на диск. Если ваш компьютер не имеет достаточного количества оперативной памяти, вы, возможно, захотите подстроить это значение. -colorize value Раскрашивает изображение, указывая насыщенность раскраски в виде процента. Можно указать через наклонную черту отдельные значения для красного, зеленого и синего каналов изображения. -colors value Задает предполагаемое количество цветов для изображения (опция ограничения числа цветов). -colorspace type Устанавливает альтернативный тип цветового заполнения: GRAY. ОНТЛ. RGB, Transparent, XYZ, YCbCr, Y1Q, YPbPr, YUV или СМ\ К. По \моп- чапию ограничение цветное lit имеет место в цветовом шюлиении RGB. Transparent сохраняет прозрачным капал и юбраження, если гаконон с\ - Шествует. Эта опция ipcfiyer опцию -colors пли опцию -monochrome.
II. Команды 477 -comment string Назначает для изображения указанную строку комментария. -compress type Указывает тип сжатия изображения: None, BZip, Fax, Group4, JPEG Lossless, LZW, RunlengthEncoded или Zip. Эта опция обычно используется вместе с опцией -write. Для сохранения двоичного изображения без сжатия вы должны указать опцию +compress. -contrast Усиливает или снижает (+contrast) контрастность изображения. -crop widthxheight{+-}x_offset{+-}y_offset{%) Устанавливает предпочтительный размер и расположение усеченного изображения (сохранение его части и удаление остатка), используя геометрическую спецификацию (см. X). Здесь width и height указывают размер оставшегося изображения, а смещения xoffsel и у offset - положение верхнего левого угла усеченного изображения относительно оригинального изображения. Вы можете указать ширину или высоту в процентах, добавив %. -delay value Выводит после паузы следующее изображение. Аргумент value - это число сотых долей (1/100) секунды. По умолчанию задержки между показом изображений в последовательности отсутствуют. Максимальная задержка достигает 65535. -density widthxheight Задает горизонтальное и вертикальное разрешение в пикселах. Эта опция указывает разрешение изображения, когда выполняется дешифрирование страницы PostScript или переносимого документа. По умолчанию принято значение, составляющее 72 пиксела на дюйм в горизонтальном и вертикальном направлениях. Эта опция должна согласоваться с опцией -page. -depth value Задает количество битов (8 или 16) в цветном образце в пределах пиксела. Эта опция применяется для низкоуровневых изображений, глубина цветности которых неизвестна, а именно: для GRAY (изображения в градациях серого), RGB или CMYK. -despeckle Уменьшает зернистость изображения. -display host:display[.screen] Указывает Х-сервер для контакта (см. X). -dispose method Определяет метод диспозиции (расположения) для GIF-формата: 0 расположение не указано 1 не располагает между кадрами 2 перекрывает кадр фоновым цветом из заголовка 3 перекрывает предшествующим кадром -dither Использует диффузию (рассеивание) ошибки по Фпонду/Штенносргу (Floyd/Steinberg) ), улучшающую изображения, которые стратают от сжатия палитры. Эта опция требует опцию -colors или -monochrome. Базовая стратегия рассеивания состоит в том, чтобы созчагь простран-
478 II Команды ственное разрешение путем усреднения итенсивностей нескольких соседних пикселов. -draw string Аннотирует (снабжает комментариями) изображение с одним или более графическими примитивами (базовыми графическими элементами): point x,y точка требует единственную координату line xO,yOxl,yl линия требует координаты начальной и конечной точек rectangle xO.yOxl.yl прямоугольник ожидает координаты левого верхнего и правого нижнего углов roundRectangle xO,yOxl,yl wc,hc закругленный прямоугольник имеет координаты левого верхнего и правого нижнего углов, а также ширину и высоту углов arc xO,yOxl,yl aO.al дуга требует координаты начальной и конечной точек, а также градус вращения (например, 130,30 200,100) ellipse x0,y0rx,ry a0,al (эллипс) часть эллипса с центром в заданной точке и радиусами по осям X и Y, а также с началом и концом дуги в градусах circle x0,y0xl,yl окружность имеет координату центра и внешнего края polyline x0,y0 ... хп.уп ломаная линия для определения ее границ требует три или более координат ■ polygon x0,y0 ... хп,уп многоугольник для определения его границ требует три или более координат bezier x0,y0 ... хп,уп кривая Безье path спецификация маршрута image оператор х0,у0 w,h имя файла -edge radius Обнаруживает по заданному радиусу края внутри изображения. -encoding type Указывает шифрование (кодирование) шрифта. Выбор производится из AdobeCustom, AdobeExpert, AdobeStandard, AppleRoman. B1G5, GB2312, Latin 2, None, SJIScode, Symbol, Unicode, Wansung. -enhance Применяет цифровой фильтр при увеличении зашумленного изображения (для улучшения качества). -equalize Выполняет гистограммное выравнивание изображения, компенсирующее амплитудное, частотное и фазовое искажения. -fill color Устанавливает цвет, используемый для заполнения графического примитива. -filter type Указывает тип фильтра для изменения размера изображения: Point. Во\, Triangle, Hermite, Manning, Hamming, Blackmail, Gaussian, Quadratic, Cubic, Catrom, Mitchell, Lanczos (no умолчанию), Bessel, Sine. -П'Р По щелчку создаст (еркалыюс изображение в вертикальном iiaupaaie- нии.
II. Команды 479 -flop Создает зеркальное изображение в горизонтальном направлении -format type Устанавливает графический формат изображения. Вы можете указать формат изображения, добавив перед именем файла название формата и двоеточие или название формата как суффикс к имени файла через точку. Список доступных форматов можно получить через команду convert. -font пате Использует указанный шрифт X11 для аннотации изображения. -frame widthxheight+outer_bevel_width+inner_beveI_width Окружает изображение декоративной границей. Вы можете выполнить скошенное соединение (на скос), рисуя прямую линию между концами двух линий. Цвет границы указывается с помощью опции -mattecolor. -fuzz distance{%} Предполагает цвета в пределах интенсивности distance равными. Здесь параметр distance может представлять как абсолютную интенсивность, так и процент от максимально возможной интенсивности (255 или 65535), если задан со знаком %. -gamma value Устанавливает уровень гамма-коррекции (от 0.8 до 2.3), позволяющей подстроить изображения на мониторах разных рабочих станций. Вы можете указать отдельные значения для красного, зеленого и синего каналов изображения, разделив их наклонными. -geometry widlhxheight {+-}х offset{+-}y offset{%} {©}{!}{<}{>} Устанавливает предпочтительный размер или расположение изображения при кодировании. По умолчанию во время изменения размера пытается сохранять формат изображения (соотношение ширины и высоты). Чтобы вынудить изображение принять некий определенный размер, добавьте в конце восклицательный знак. Вы можете указать процент ширины (или высоты), добавив %, и изменить размеры с помощью о. Символ > меняет размер изображения только в том случае, если его ширина или высота превышает геометрическую спецификацию. Символ < меняет размер изображения только в том случае, если его ширина и высота меньше, чем геометрическая спецификация. Символ @ указывает максимальную область изображения в пикселах. -gravity type Выполняет вертикальное и горизонтальное размещение текста, когда аннотирует изображение. Можно задавать следующие направления: NorthWest северо-запад East восток North север SouthWcst юго-запад NorthEast северо-восток South юг West запад SouthEast юго-восток Center центр -interlace type Указывает тип чередования (поочередного сканирования линий) для низкоуровневых форматов изображений (RGB или YUV): None (RGBRGBRGBRGBRGBRG13...) по умолчанию Line (RRR...GGG...BBB...RRR...GGG...BBB...)
480 II Команды Plane (RRRRRR...GGGGGG...BBBBBB...) Partition как Plane, но разные битовые плоскости (матрицы, образованные совокупностью одноименных битов всех пикселов) сохраняются в разных файлах: image.R, image.G, image.B -label name Назначает изображению указанную метку. -level value Подстраивает уровень контрастности изображения. Задаются три значения с десятичной точкой, разделенные запятыми: черный, средний и белый. Черному и белому соответствует диапазон от 0 до MaxRGB, a среднему - от 0 до 10. -linewidth value Устанавливаеттолщину линии для операций рисования, -loop iterations Повторяет изображение iterations раз. -map filename Выбирает специфический набор цветов из этого файла с изображением. Хотя по умолчанию согласно методу ограничения цветов будет выбран оптимальный набор цветов, наилучшим образом представляющий оригинальное изображение. Опция +тар вынуждает использовать единый оптимальный набор цветов для всех изображений последовательности. -matte Сохраняет матовый (светонепроницаемый) канал, если изображение его имеет, в противном случае создает непрозрачный канал. -mattecolor Указывает цвет матового канала. -median radius Прилагает к изображению медианную фильтрацию по заданному радиусу. -modulate value Указывает в процентах изменение яркости, светового насыщения и оттенка, разделенных запятыми. -monochrome Трансформирует данное изображение в монохромное (черный и белый цвета). -negate Заменяет каждый пиксел его дополнительным цветом: белый становится черным, желтый - голубым и т.д. Для серой палитры используется опция +negate. -noise radius\lype Уменьшает или добавляет шум в изображение. Главная идея алгоритма - замещение некоторого пиксела значением его соседнего пиксела внутри пиксельного окна, если исходный пиксел рассматривается как шум. Максимальный или минимальный пиксел внутри пиксельного окна рассматривается как шум. Чтобы указать ширину "соседства", испоть- зуется параметр radius. Чтобы добавить шум в изображение, используйте +noise с указанием нспосреды всиио за опцией типа шума. С\ шествуют следующие типы: Uniform Impulse Gaussian I aplacijn Multiplicative I'oisson
II. Команды 481 -normalize Преобразует изображение, чтобы охватить полный диапазон значений цветов (технология усиления контрастности). -opaque color Внутри изображения меняет этот цвет color на цвет пера. -page widthxheight{+-}x_offset{+-}y_offset{%\ {!}{<} {>} Устанавливает предпочтительный размер и расположение канвы изображения. Опция -page похожа на -geometry. Вы можете использовать эту опцию, чтобы указать размеры страницы в точках на дюйм или страницу TEXT в пикселах. Предоставляется следующий выбор для Postscript-страницы: 11x17 792 1224 Ledger 1224 792 Legal 612 1008 Letter 612 792 LetterSmall 612 792 (По умолч. для TEXT) ArchE ArchD ArchC ArchB ArchA АО Al A2 A3 A4 A4Small A5 A6 A7 2592 3456 1728 2592 1296 1728 864 1296 648 864 2380 3368 1684 2380 1190 1684 842 1190 595 842 595 842 421 595 297 421 210 297 int radius Создает подобие живописи A8 A9 A10 ВО Bl B2 ВЗ В4 В5 СО С1 С2 СЗ С4 С5 С6 Flsa Flse 148 210 105 148 74 105 2836 4008 2004 2836 1418 2004 1002 1418 709 1002 501 709 2600 3677 1837 2600 1298 1837 918 1298 649 918 459 649 323 459 612 936 612 936 HalfLetter 396 612 более часто встречающимся цветом в окружении, ширина которого задается как radius. -pen color Указывает цвет пера для операций рисования. -pointsize value Указывает размер шрифта Postscript (в пунктах, вернее, в десятых долях типографского пункта: значение 80 обозначает, что размер шрифта равен 8 пунктам). -quality value Устанавливает уровень сжатия для изображений формата JPEG MIFF/ PNG. Для изображения в формате JPEG аргумент value меняется от 0 до 100. По умолчанию принято 75. -raise widthxheight Создает трехмерный (3-D) эффект. Освещает или затемняет грани изображения по заданой геометрии.
II Команды -region widthxheight{+-}x_ojfset{+-}yjoJ)set Прикладывает опции лишь к указанной част и изображения. Но умолчанию опции командной строки применяются к полному изображению -roll {+-}x_offset{+-}yjoffset Прокручивает изображение вертикально и горизонтально. Отрицательное значение xoffset прокручивает изображение слева направо, отрицательное значение y_offset прокручивает изображение сверху вниз. -rotate degrees {<}{>} Выполняет над изображением вращение Паеса (Paeth) на указанный угол. Знак > вращает изображение только в том случае, если его ширина превышает высоту; знак < вращает изображение только в том случае, если его ширина меньше высоты. -sample geometry Масштабирует изображение путем дискретизации пикселов (преобразования пикселов в последовательность чисел). Формат спецификации geometry- стандартный. Данная опция игнорирует любые выбранные с помощью опции -filter фильтры, а также смещения в строке geometry. -scene value Определяет номер сцены изображения (номер изображения в последовательности в случае единственного имени файла). Каждое изображение в последовательности определяется этим именем файла и идущим за ним через точку номером сцены. -shade azimuthxelevation Затеняет данное изображение, используя отдаленный источник света, где azimuth - это азимут, a elevation - высота над горизонтом. -shear x_degreesxy_degrees Разрезает изображение вдоль осей X (xdegrees) или Y (y_degrees) под положительным или отрицательным углом. -size widthxheight{+offset} Указывает ширину и высоту низкоуровневых изображений (GRAY, RGB или CMYK) и позволяет пропустить любую информацию из заголовка изображения или сообщить количество цветов в таблице отображения. -stroke color Задает цвет для штриховки графического примитива. См. в X описание форматов используемых цветов. -strokewidth value Задает ширину штриховки. -swirl degrees Скручивает пикселы изображения возле центра. Градусы degrees определяют напряжение кручения. -texture filename Указывает имя файла текстуры, используемой для покрытия фона. -transform Трансформирует данное изображение, прикладывая матрицу предшествующей опции -affinc. -transparent color Внутри изображения делает этот цвет прозрачным.
II Команды 483 -treedepth value Указывает глубину цвета (целое значение, обычно 0 или 1) для сохраняемого дерева. Позволяет задать алгоритм ограничения цветов. Оптимальная глубина обычно позволяет наилучшим образом и как можно быстрее представить изображение, расходуя при этом минимум памяти. -trim Выполняет подгонку краев изображения, удаляя любые края, имеющие тот же самый цвет, что и угловые пикселы. Используйте опцию -fuzz, чтобы сделать возможным удаление краев почти такого же цвета, как и цвет угловых пикселов. -units type Устанавливает тип разрешения (единицы измерения разрешения), применяемого при выводе изображения: Undefined (неопределенный, принят по умолчанию), PixelsPerlnch (пикселы на дюйм) или PixelsPerCentimeter (пикселы на сантиметр). -verbose Печатает подробную информацию об изображении: номер сцены, имя изображения, размер, класс изображения, общее число уникальных цветов, количество секунд, необходимое для чтения и трансформации изображения, и т.п. -wave amplitudexwavelength Меняет изображение по синусоиде, заставляя выполнять волнообразное движение: где amplitude - это амплитуда колебания, a wavelength - длина волны. Пример S mogrify -interlace partition cdpl.gif $ В результате возникли два файла: cdpl.mgk и cdpl.mgk~. Для этого типа чередования битовые плоскости сохраняются в разных файлах. montage выполняет монтаж изображения из других изображений. Синтаксис montage [options —J file [[options ...] file ] output file Составное изображение в outputJile создается из перечисленных перед ним в командной строке изображений file следующим образом: прежде всего каждое исходное изображение масштабируется до максимального размера фрагмента, составляющего по умолчанию 120x120. Затем составное изображение окрашивается в цвет, указываемый в командной строке опцией -background или ресурсом X Window. Ширина и высота сложного изображения зависят от максимального размера фрагмеша, количества фрагментов в строке, ширины окаймления фрагмента и изображения, от высоты метки. Количество фрагментов в строке указывает, сколько изображений можег появиться в каждой строке составного изображения, и по умолчанию равно 5 фрагмен-
484 II Команды там в строке и 4 фрагментам в каждом столбце сложного изображения. Если количество фрагментов превышает принятое по умолчанию число 20, будет создано более одного сложного изображения. По умолчанию сложное изображение записывается в формате MIFF и может быть просмотрено или распечатано с помощью команды display Ширина и высота рамки (окаймления) фрагмента, а также ширина и высота рамки изображения по умолчанию равняются ресурсу X под названием -bordcrwidth, но могут быть изменены с помощью одноименной опции командной строки или опции -geometry. В свою очередь высота метки зависит от шрифта, указанного с помощью опции -font, или Х-ресурса. Первоначально фрагмент сложного изображения помещается сверху (см. опцию -tile), а каждое составляющее изображение устанавливается в сложное, окруженное рамкой своего цвета, со своим наименованием, центрируемым ниже. Все индивидуальные изображения фрагментарной области выравниваются слева, порядок их следования сохраняется таким же, как и в командной строке, если только каждое изображение не имеет ключевого номера (scene), согласно которому и расставляются отдельные изображения. Опции -adjoin Соединяет изображения и помещает их в одном файле. По умолчанию все изображения любой последовательности изображений хранятся в одном файле. Однако некоторые форматы (скажем, JPEG) не поддерживают более одного образа и хранят их в различных файлах. Чтобы задействовать указанную возможность, используйте опцию -adjoin. -background color Указывает цвет фона. -blur radiusx.sigma При помощи гауссова оператора с заданным радиусом radius и стандартным отклонением sigma "размывает" (делает нерезким) данное изображение. -bordercolor color Указывает цвет рамки. См. в X описание форматов используемых цветов. -borderwidth geometry Задает ширину рамки. -cache threshold Подстраивает пороговое значение памяти (мегабайты), доступное видеокэшу. Пока не будет задействовано 80 Мбайт памяти, пикселы изображения хранятся в памяти. Последующие операции с пикселами переносятся на диск. И хотя операции в памяти выполняются существенно быстрее, но если ваш компьютер не имеет достаточного количества оперативной памяти, вы, возможно, захотите подстроить что значение. -chop widthxheight{+-}x_offsel{+-}y_offset{%} Удаляет пикселы из указанной внутренней части изображения. Здесь width и height задают число соответственно столбцов и строк для уда-
II. Команды 485 ления, a xofjset и \_offset - смещения, указывающие положение самого левого столбца и самой верхней строки удаляемой части. Удалив указанную часть изображения, опция -chop старается заполнить образовавшийся промежуток, перенося оставшиеся угловые блоки налево и вверх. -colors value Задает предполагаемое количество цветов для изображения (опция ограничения числа цветов). Опции -dither, -colorspace и -treedepth затрагивают алгоритм ограничения числа цветов. -colorspace type Устанавливает альтернативный тип цветового заполнения. На выбор предоставляются следующие типы: GRAY, OHTA, RGB, Transparent, XYZ, YCbCr, YIQ, YPbPr, YUV или CMYK. По умолчанию ограничение цветности имеет место в цветовом заполнении RGB. Эта опция требует опцию -colors или опцию -monochrome. -comment string Назначает для изображения указанную строку комментария. По умолчанию каждое изображение комментируется именем его файла. -compose operator Указывает оператор, определяющий альтернативную операцию, где результат будет: Over In Out Atop Xor Plus Minus Add Subtract Difference Multiply Bumpmap Copy CopyRed CopyGreen CopyBlue CopyOpacity -compress type Указывает тип сжатия изображення: None, BZip, Fax, Group4, JPEG, Lossless, LZW, RunlengthEncoded или Zip. Эта опция обычно используется вместе с опцией -write. Для сохранения двоичного изображения без сжатия вы должны указать опцию +comprcss. -crop widlhxheight{+-}x_offset{+-}y_offset{%} Устанавливает предпочтительный размер и расположение усеченного изображения (сохранение его части и удаление остатка), используя геометрическую спецификацию (см. X). Здесь width и height указывают размер оставшегося изображения, а смещения xoffset и yoffset - положение верхнего левого угла усеченного изображения относительно оригинального изображения. Вы можете указать ширину или высоту в процентах, добавив %. -debug Разрешает вывод отладочной информации.
486 II Команды -density widthxheight Задает горизонтальное и вертикальное разрешение в пикселах. Эта опция указывает разрешение изображения, когда выполняется дешифрирование страницы PostScript или переносимого документа. По умолчанию принято значение, составляющее 72 точки на дюйм в горизонтальном и вертикальном направлениях. Эта опция должна согласоваться с опцией -page. -depth value Задает количество битов (8 или 16) в цветном образце в пределах пиксела. Эта опция применяется для низкоуровневых изображений, глубина цветности которых неизвестна, а именно: для GRAY (изображения в градациях серого), RGB или CMYK. -display host:display[.screeri\ Указывает Х-сервер для контакта (см. X). -dispose method Определяет метод диспозиции (расположения) для GIF-формата: 0 расположение не указано 1 не располагает между кадрами 2 перекрывает кадр фоновым цветом из заголовка 3 перекрывает предшествующим кадром -dither Использует диффузию (рассеивание) ошибки по Флойду/Штейнбергу (Floyd/Steinberg), улучшающую изображения, которые страдают от сжатия палитры. Эта опция требует опцию -colors или -monochrome. Базовая стратегия рассеивания состоит в том, чтобы создать пространственное разрешение путем усреднения интенсивностей нескольких соседних пикселов. -draw string Аннотирует (снабжает комментариями) изображение с одним или более графическими примитивами (базовыми графическими элементами): point x,y точка требует единственную координату line xO,yO xl,yl линия требует координаты начальной и конечной точек rectangle хО.уО х 1 ,у 1 прямоугольник ожидает координаты левого верхнего и правого нижнего углов roundRectangle хО.уО х 1 ,у 1 wc,hc закругленный прямоугольник имеет координаты левого верхнего и правого нижнего углов, а также ширину и высоту углов arc xO.yO xl.yl aO,al дуга требует координаты начальной и конечной точек, а также градус вращения (например, 130,30 200,100) ellipse х0,у0 гх.гу aO.al (эллипс) часть эллипса с центром в заданной точке и радиусами по осям X и Y, а также с началом и концом дуги в градусах circle x0,y0 xl.yl окружность имеет координату центра и внешнего края
II. Команды 487 polyline хО.уО ... xn,yn ломаная линия, для определения ее границ требует три или более координат polygon хО,уО ... хп.уп многоугольник, для определения его границ требует три или более координат bezier х(),уО ... хп.уп кривая Безье path спецификация маршрута image оператор хО,уО w,h имя файла -encoding type Указывает шифрование (кодирование) шрифта. Выбор производится из AdobeCustom, AdobeExpert, AdobeStandard, AppleRoman, BIG5, GB2312, Latin 2, None, SJIScode, Symbol, Unicode, Wansung. -endian type Задает окончания (MSB или LSB, см. приложение VI) в выводимом изображении. -fill color Устанавливает цвет (см. формат в X), используемый для заполнения графического примитива. -filter type Указывает тип фильтра для изменения размера изображения: Point, Box, Triangle, Hermite, Hanning, Hamming, Blackman, Gaussian, Quadratic, Cubic, Catrom, Mitchell, Lanczos (по умолчанию), Bessel, Sine. -font name Для отображения текста использует указанный шрифт XII. -frame widthxheight+outer_bevel_width+inner_bevel_widt Окружает изображение декоративной рамкой. Вы можете выполнить скошенное соединение (скос, или фаску), рисуя прямую линию между концами двух линий. -fuzz distance{%} Предполагает цвета в пределах интенсивности distance равными. Здесь параметр distance может представлять как абсолютную интенсивность, так и процент от максимально возможной интенсивности (255 или 65535), если задан со знаком %. -gamma value Устанавливает уровень гамма-коррекции (от 0.8 до 2.3), позволяющей подстроить изображения на мониторах разных рабочих станций. Если требуется приложить гамма-значения к красному, зеленому или синему каналам изображения, значения следует отделить друг от друга наклонной чертой. -geometry widthxheight{+-}x_offset{+-}y_oj]set{%} {@} {!}{<} {>} Устанавливает предпочтительный размер и расположение окна изображения. По умолчанию во время изменения размера пытается сохранять формат изображения (соотношение ширины и высоты). Чтобы вынудить изображение принять некий определенный размер, добавьте в конце восклицательный знак. Вы можете указать процент ширины (или высоты), добавив %, и изменить размеры с помощью о. Символ > меняет размер изображения только в том случае, если его ширина или высота превышают геометрическую спецификацию. Символ < меняет размер изображения только в том случае, если его ширина и высота мень-
II Команды ше, чем геомсфическая спецификация. Символ @ указывает максимальную область изображения в пикселах, -gravity type Указывает географическое размещение текста, когда аннотирует изображение. Можно задавать следующие направления: NorthWest северо-запад North север NorthEast северо-восток West запад Center центр East восток SouthWest юго-запад South юг SouthEast юго-восток -interlace type Указывает тип чередования (поочередного сканирования линий) для низкоуровневых форматов изображений (RGB или YUV): None (RGBRGBRGBRGBRGBRGB...) по умолчанию Line (RRR...GGG...BBB...RRR...GGG...BBB...) Plane (RRRRRR...GGGGGG...BBBBBB...) Partition как Plane, но разные битовые плоскости сохраняются в разных файлах: image.R, image.G, image.B -label name Назначает изображению указанную метку. -matte Сохраняет матовый (цветонепроницаемый) канал, если изображение его имеет, -mattecolor color Указывает цвет матового канала. -mode value Задает режим операции: Frame, Unframe или Concatenate - с рамкой, без рамки, сцепление. -monochrome Трансформирует данное изображение в монохромное (черный и белый цвета). -noop NOOP (no option - без опций). -page widthxheight{+-}x_offsel{+-}y_offset{%} {!} {<} {>} Устанавливает предпочтительный размер и расположение канвы изображения. Опция -page похожа на -geometry. -pen color Заказывает цвет пера для рисования. См. в X описание форматов используемых цветов. -pointsize value Указывает кегль шрифта Postscript, OPTION 1 или TrueType. -quality value Устанавливает уровень сжатия для изображений формата JPl-'G. MIFb PNG. Для форматов JPEG и MPEG значение value меняется от 0 (наивысшее сжатие) до 100 (наименее эффективное сжатие) прн принятом по умолчанию 75. Используйте опцию -sampling_factor, чтобы ука-
II. Команды 489 зать коэффициенты цветности (цветоразностных сигналов) загружаемых сэмплов (образцов). Для изображений формата MIFF значение value меняется от 0 (наихудшее, но самое быстрое сжатие) до 9 (наилучшее, но самое медленное сжатие), что не воздействует на само появление изображения, так как данное сжатие всегда осуществляется без потерь информации. -resize widthxheight{%} {©}{!}{<} {>} Меняет размер изображения. Действует подобно опции -geometry и аналогичным образом. Если опции -resize предшествует опция -filter, применяется указанный фильтр. Имеются некоторые различия: -resize выражает предпочтительный размер данного монтируемого изображения, в то время как -geometry - информацию по фрагментам. -rotate degrees {<}{>} Вращает изображением по методу Паеса (Paeth). Символ > вращает изображение только в том случае, если его ширина превышает высоту; символ < вращает изображение только в том случае, если его ширина меньше высоты. Если вы используете символы < и >, рекомендуется заключать их в двойные кавычки, например, так: -rotate "-45>". -samplingfactor horizontal_factor\verticaljactor Указывает горизонтальный и вертикальный коэффициенты сэмплирования, эти коэффициенты используются кодировщиками JPEG, MPEG-2 и YUV для определения цветности (цветоразностного сигнала) при загрузке образцов. -scenes value-value Задает для последующего чтения диапазон (значения через дефис) номеров изображений сценария. Каждое изображение указанного диапазона считывается с задаваемого файла, за именем которого через точку следует десятичный номер сцены. -shadow radiusxsigma Добавляет снизу изображения тень, создающую глубину заданного радиуса и стандартного отклонения. -sharpen radiusxsigma Усиливает резкость данного изображения, используя гауссов оператор с заданным радиусом и стандартным отклонением. -size widthx.height{+offset} Указывает ширину и высоту низкоуровневых изображений (GRAY. RGB или CMYK.) и позволяет пропустить любую информацию из заголовка изображения или сообщить количество цветов в таблице отображения. Выбирайте следующие размеры для изображений Photo CD: 192x128 1536x1024 384x256 3072x2048 768x512 Также используйте эту опцию для выбора индивидуального разрешения изображения формата JBIG или JPFG.
II Команды -stroke color Задает цвет для штриховки графического примитива. См. в X описание форматов используемых цветов. -strokewidth value Задает ширину штриховки. -texture filename Указывает имя файла текстуры, используемой для покрытия фона. -tile geometry Указывает размещение изображений при монтаже, задавая число фрагментов в строке и столбце, -title string Назначает указанный заголовок выводимому изображению. -transparent color Внутри изображения делает задаваемый цвет прозрачным. См. в X описание форматов используемых цветов. -treedepth value Указывает глубину дерева цветов (целое значение, обычно 0 или 1). Позволяет задать алгоритм ограничения цветов. Оптимальная глубина обычно дает возможность наилучшим образом и как можно быстрее представить изображение, расходуя при этом минимум памяти. -trim Выполняет подгонку краев изображения, удаляя любые края, имеющие тот же самый цвет, что и угловые пикселы. Используйте опцию -fuzz, чтобы сделать возможным удаление краев почти такого же цвета, как и цвет угловых пикселов. -type type Задает тип изображения. Выбирать можно из следующих типов: Bilevel, Grayscale, Palette, PaletteMatte, TrueColor, TrueColorMatte, CoIorSe- paration, CoIorScparationMatte или Optimize. Обычно любой формат поддерживает еще и дополнительные форматы, входящие в основной формат, из которых кодировщик и пытается выбрать наиболее эффективный. Данная опция запрещает эту особенность, задавая жесткий формат. -verbose Печатает детальную информацию о данном изображении: номер сцены в сценарии, имя и размер изображения, общее количество уникальных цветов, класс или псевдокласс изображения, количество секунд, необходимое, чтобы прочесть и трансформировать данное изображение. Пример Изображение из файла rootjpeg выглядит следующим образом: в*1 '•- ' *W ь. «ь -»
II. Команды 491 t montage -tile 3x3 root.jpeg root.jpeg root.jpeg root.jpeg root.jpeg root.jpeg rootsum.jpeg t Вот как выглядит rootsum.jpeg: i f « ж а IH Г.'Ч-'Ч Ю1Ч1*' X U' t.j«* WW4B.' " •«!■• «J ITIOrG - фильтр дл выво текста. IV Синтакси more [-dlfpcsu][-вит][+/pattern]l+linenim][file...] Команда more выполняет поиск текста только в прямом направлении, так что это достаточно примитивный фильтр. Аналогичный фильтр less значительно превосходит more по возможностям. Опции more могут извлекаться из переменной окружения MORE, но опции командной строки перекрывают их. Опции -пит Устанавливает размер экрана в строках. -d Выводит для пользователя приглашение Press space to continue, 'q' to quit (Для продолжения нажмите пробел, для выхода - q) и сообщение Press 'h' for instructions (для подсказки нажмите h) вместо звукового сигнала, если нажимается несоответствующая клавиша. -1 more обычно рассматривает AL (form feed - перевод страницы) как специальный символ и останавливается после каждой строки, где обнаружен такой символ. Опция -I запрещает это. -f Вместо строк экрана подсчитывает логические строки, не усекая длинные строки. "Р Не выполняет скроллинг (прокрутку). Полностью очищает экран, а затем отображает текст.
492 II Команды -с Не выполняет скроллинг. Вместо jtoi о перерисовывает экран, начиная сверху, и очищает остаток каждой отображаемой строки -s Заменяет несколько подряд идущих пустых строк одной пустой, -и Запрещает подчеркивания. +/pattern До отображения каждого файла выполняет поиск строк по заданному образцу pattern. +linenum Начинает отображение со строки с указанным номером linenum. Интерактивные команды more базируются на vi. Некоторым командам может предшествовать десятичное число, далее в описании называемое к. Команды h, ? Отображает список команд. Пробел Отображает следующие к строк текста, по умолчанию выводится экран текущего размера. z Отображает следующие к строк текста, по умолчанию выводится экран текущего размера. Аргумент устанавливает новый размер экрана, который будет приниматься по умолчанию. RETURN Отображает следующие к строк текста, по умолчанию - 1. Аргумент устанавливает новое значение по умолчанию. q, Q Завершает работу more. s Передвигается вперед на к строк текста, по умолчанию на 1. f Передвигается вперед на к полных экранов текста, по умолчани ю - на 1. Ь, ЛВ Возвращается обратно на к полных экранов текста, по умолчанию - на 1. ' (одинарная прямая кавычка) Следует в то место, где начинался предшествующий поиск. = Отображает текущий номер строки. /pattern Ищет к-ос появление регулярного выражения pattern, по умолчанию - первое. п Ищет к-ое появление последнего регулярного выражения, по умолчанию - первое. \crnd, \\cmd Выполняет в подоболочке указанную команду ста". v Запускает vi с текущей строки текста. л L Перерисовывает экран. :п Переходит к к-иу последующему файлу, по умолчанию - к следующему. :р Перехолит к £-му предшествующему файлу, по умолчанию - к предыдущему. : f Отображает имя текущего файла и номер строки текста. Повторяет предшествующую команду.
II. Команды 493 Пример Один из экранов, выводимых программой more. Ш1 root@locelhost.localdomein: /root Файл Правка Settings Справка SYMENT PLTG0T PLTRELSZ PLTREL JI1PREL REL RELSZ RELENT VERTJEF VERTJEFNUI1 VERNEED VERNEEDNU1 VERSYM 0x10 0x481с Oxlcfl 0x11 0x129с 0x1064 0x238 0x8 Oxffc 0x2 0x1034 0x1 OxflB Version definitions: 1 0x01 0x0a62cf82 libss.so.2 2 0x00 0x073dl0bc GCC.INTERNAL Version References: required from libc.so.B: 0x0d696911 0x00 04 GLIBC_2.1 0x0d69e910 0x00 03 GLIBC.2.0 Sections: Idx Name 0 .hash —More—(92>| Size VMA LHfl File off Algn 00000354 00000094 00000094 00000094 2**2 CONTENTS, ALLOC, L0ATJ, READONLY, DATA mount - монти ет аиловую систему. К Синт и mount [-hV] mount -a [-fFnrsvw][-t vfstype] mount [-fnrBvw][-o option[,...]] device\dir mount l-fnrBvw]l-t vfstype][-o option] device dir Все файлы, доступные в Unix, расположены на одном большом дереве, корень которого обозначается /. Файлы располагаются на различных устройствах. Команда mount служит для подключения файловых систем разных устройств к этому большому дереву. Также существует противоположная команда под названием umount. производящая демонтирование, или отключение, файловых систем. Наиболее часто встречающаяся форма команды mount выглядит следующим образом: mount -t vfstype device dir Такая команда предлагает ядру смонтировать файлопую систему укаишного гипа vfstype, расположенную на устройстве device, к заданному каталогу dir, который нног-
494 II Команды да называют точкой монтирования. Старые содержимое, владелец и режим каталога dir исчезают, а вновь возникшие продолжают действовать пока смонтирована (подключена) файловая система. Большинство устройств определяются именем файла, например, /dcv/sda3, хотя существуют и другие возможности (см. опции -L и -U). Так что подключаться будет файловая система /dcv/sda3 или любая аналогичная. Ключевую роль в процессе монтирования играет файл /etc/fstab, строки которого описывают обычно подключаемые устройства. Стандартная команда mount -а И vfstype], обычно встречающаяся в сценариях загрузки, пытается монтировать все файловые системы типа vfstype, встречающиеся в файле /ctc/fstab, за исключением тех, чьи строки описаний содержат ключевое слово noauto. Обычно только суперпользователь может монтировать файловые системы, но если в строке описания файла /ctc/fstab содержится опция user, соответствующую файловую систему может монтировать любой пользователь. Лишь тот пользователь, который монтировал файловую систему, может демонтировать ее. Программы mount и umount поддерживают список текущих смонтированных файловых систем в файле /ctc/mtab. Запущенная без аргументов, mount печатает этот список. -V Выводит информацию о версии программы. -h Распечатывает подсказку. -v Подробно сообщает о выполняемых действиях. -а Монтирует все файловые системы указанного типа, описания которых содержатся в fstab. -F Позволяет подключать файловые системы на различных устройствах или на серверах NFS параллельно. Используется совместно с опцией -а. Хотя опцию -F нельзя применять, чтобы одновременно смонтировать /usr и /usr/spool. -f Пытается делать все возможное для выполнения системного вызова. Эта опция полезна совместно с -v, чтобы отследить попытки, предпринимаемые командой mount. С помощью -f можно также добавить элементы описаний тех устройств, которые ранее монтировались с опцией-п. -п Монтирует без записи в /ctc/mtab. "s Избегая аварийного завершения, допускает даже неподходящие опции монтирования. При этом опции, не поддерживаемые файловой системой, будут просто игнорироваться. "г Монтирует файловую систему только для чтения. В качестве синонима используется -о го. "w Монтирует файловую систему в режиме чтения/запись. В качестве синонима используется -о rw. -L label Монтирует раздел (специальное устройство), указываемый меткой label. Требует наличия файла /proc/pnrtitions (начиная с ядра 2.1.116).
II. Команды 495 -U uuid Монтирует раздел, указываемый uuid - идентификатором системы UUCP (Unix-Unix CoPy - система взаимодействия между Unix-машинами, включающая пересылку файлов, дистанционный запуск заданий, эмуляцию терминала). Некоторые блочно-специальные устройства монтируются подобным образом. Требует наличия файла /proc/partitions (начиная с ядра 2.1.116). -t vfstype Указывает тип файловой системы. Все текущие поддерживаемые типы перечислены в linux/fs/filesystems.c (это общепринятое имя файла, а в Red Hat с ядром 2.2.14 этот файл носит название /usr/src/linux-2.2.14/fs/filesystems.c). По умолчанию принят тип iso9660 - файловая система устройств CD-ROM. В общем случае является списком типов файловых систем, разделенных запятыми. Если в начале списка обнаруживается префикс по, перечисленные файловые системы исключаются из рассмотрения. -о option Указывает список опций, разделенных запятыми. Некоторые из этих опций полезны, когда появляются в файле /etc/fstab. Ниже приведены опции, пригодные для любой подключаемой файловой системы: async все операции ввода/вывода файловой системы будет выполнять асинхронно atime для каждого обращения обновляет время доступа в дескрипторе файла (по умолчанию) auto может монтироваться с опцией -а defaults использует опции, принятые по умолчанию: rw, suid, dcv, exec, auto, nouser и async dev различает файловые системы символьно-специальных и блочно-специальных устройств exec разрешает исполнение двоичных файлов noatime для этой файловой системы не обновляет поле дескриптора, содержащее время доступа noauto разрешает монтирование лишь по прямому указанию: опция -а не действует nodev не различает файловые системы символьно-специальных и блочно-специальных устройств поехес запрещает исполнение любых двоичных файлов смонтированной файловой системы; эта опция полезна для серверов, в состав которых входят файловые системы с двоичными файлами, предназначенными для другой архитектуры nosuid запрещает использовать биты полномочий SUID (sct-user- identifier - установка идентификатора владельца файла вместо идентификатора того, кто запустил файл на исполнение) и SGID (set-group-identifier - установка идентификатора группы собственно файла, аналогичен suid)
II Команды nouser запрещает обычному пользователю монтировать файловую систему, что принято по умолчанию remount пробует перемонтировать уже смонтированную файловую систему, что необходимо, если требуется поменять флаги (файловая система с режимом только для чтения может быть преобразована и после перемонтирования допускает режим записи) го монтирует файловую систему только для чтения rw монтирует файловую систему в режиме чтение/запись suid разрешает действовать битам полномочий SUID и SGID (см. опцию nosuid) sync все операции ввода/вывода будет выполнять синхронно user разрешает обычному пользователю монтировать файловую систему, эта опция подразумевает noexec, nosuid, nodev, если только они не перекрываются последовательностью опций user, exec, dev, suid Далее приведены опции, пригодные для определенных файловых систем; все они следуют за флагом -о. Опции для devpts (псевдотерминалы) uid=vo/ue и gid=value Устанавливает владельца и группу для вновь созданных псевдотерминалов. Если эти опции не заданы, будут приниматься UID и GID запустившего команду процесса. mode=vo/ue Устанавливает режим доступа для вновь созданного псевдотерминала в указанное значение value; по умолчанию - 0600. Значения mode=620 и gid=S вводит по умолчанию команда mesg у (терминал принимает сообщения). Опции для ext2 (стандартная файловая система Linux) bsddf / minixdf С помощью системного вызова staffs предоставляет статистику по файловой системе. При этом minixdf возвращает общее количество блоков, используемых файловой системой, a bsddf - отбрасывает часть блоков, которые необходимы файловой системе ext2, но не применяются для хранения файлов. По умолчанию принята опция bsddf. check / check=normal / check=strict Устанавливает уровень проверки при монтировании. По умолчанию принята опция chcck=normal, при этом проверяются битовые массивы дескрипторов и блоков, что требует дополни тельного времени. В случае задания chcck=strict также проверяется, чтобы перераспределялись блоки в зоне данных, доступные дчя храпения файлоп.
II. Команды 497 check=none, noncheck He выполняет никаких проверок. debug Печатает отладочную информацию при каждом монтировании. errors=continue / errors=remount-ro / errors=panic Устанавливает одну из этих возможностей, определяющих действия в случае обнаружения ошибок в файловой системе: errors=continue игнорирует ошибки, хотя и помечает файловую систему как некорректную, а затем продолжает монтирование errors=remount-ro перемонтирует файловую систему только для чтения errors=panic аварийно завершает процесс Вариант по умолчанию устанавливается в суперблоке файловой системы и может быть изменен с помощью tune2fs. grpid, bsdgroups / nogrpid, sysvgroups Определяет, какой идентификатор группы получит вновь созданный файл. Если указана опция grpid, принимает GID каталога, в котором он создан. В противном случае (по умолчанию, второй вариант) принимает GID текущего процесса, если только для каталога не установлен SGID, ибо в этом случае берет GID родительского каталога и также может приобрести SGID. resgid=n Определяет, кто может использовать зарезервированные блоки. Файловая система ext2 резервирует определенный процент (по умолчанию 5%) доступного дискового пространства для собственных нужд. Зарезервированные блоки может использовать любой, принадлежащий к указанной группе. resuid=n Определяет, кто может использовать зарезервированные блоки (см. rcsgid=/i). Упомянутые блоки может использовать любой, чей UID равен п. sb=n Вместо блока 1 использует в качестве суперблока и-й блок. Что полезно, если файловая система повреждена и ранее были выполнены копии суперблокоп для каждых 8192 блоков: блок1. 8193, 16385 и т.д. Сотни, а возможно даже тысячи копий для большой системы... Опции для fat (сюда входят msdos, umsdos и vfat) blocksize=512 / blocksize=1024 / blocksizc=2048 Устанавливает размер блока, по умолчанию - 512. uid=va/ue и gid=v«/ue Устанавливает владельца п группу всех файлов. По >мо<1чанию берется UID и GID текущего процесса.
498 II Комэеды umask=vo/ue Устанавливает биты полномочий. Но умолчанию берутся биты полномочий текущего процесса в восьмеричном формате. check=va/ue Определяет три уровня обработки символов в именах файлов: r[elaxed] одинаково трактует символы верхнего и нижнего регистров; усекает длинные части имен (вместо mary.foobar становится mary.foo), принимает начальные и вставленные пробелы в каждой части имени ( собственно в имени и в его расширении) n[ormal] подобно relaxed, но отвергает многие специальные символы: *, ?, <, пробелы и т.д.; этот уровень принят по умолчанию s[trict] подобно normal, но имена не могут содержать длинных частей, специальных символов, которые иногда используются в Linux, но не принимаются в MS DOS и также отвергаются; к таковым относятся знак плюс, знак равенства, пробелы и т.д. codepage=vo/i/e Устанавливает кодовую страницу для преобразования имен в короткие имена в файловых системах FAT и VFAT. По умолчанию используется codepage 437. conv=b[inary] / conv=t[ext] / conv=a[uto] Файловая система fat может выполнять преобразования символов CRLF (возврата каретки и перевода строки) в символ NL (новой строки) и обратно, что превращает текст MS DOS в текст формата Unix. Доступны следующие режимы преобразований: binary никакие трансляции не выполняются; этот режим принят по умолчанию text для всех файлов выполняется трансляция CRLF в NL и обратно auto для всех файлов, чьи имена не содержат широко известных расширений имен, выполняется трансляция CRLF в NL и обратно; список широко известных имен можно обнаружить в начале файла fs/fat/misc.c (это общепринятое имя в Red Hat с ядром 2.2.14 конкретизировалось в файл /usr/src/linux-2.2.14/fs/fnt/misc.c). debug Включает отладочный режим, распечатывая информацию о версии и список параметров файловой системы. fat=12 / fat=!6 / fat=32 Указывает 12, 16 или 32-битную файловую систему fat, что перекрывает автоматическое определение типа fat.
II. Команды 4v9 iocharset=vo/ue Определяет набор символов, используемый для преобразования 8-битных символов в 16-битные символы Unicode. По умолчанию - iso8859-l. Длинные имена файлов хранятся на диске в формате Unicode. Опции для iso9660 (файлы устройств CD-ROM) Rock Ridge - это расширение iso9660 для реализации всех дополнительных возможностей Unix: поле владельца файла, количество ссылок (связей), соглашение о блочно-специальных и символьно-специальных устройствах и т.д. Файловая система Rock Ridge не отличается от обычной файловой системы Unix, но используется только для чтения, norock Отменяет использование расширений Rock Ridge. check=r[elaxed] / check=s[trict] С опцией check=rclaxed будет вначале конвертировать символы имен файлов (всегда на верхнем регистре для iso9660) в символы нижнего регистра, а уж затем выводить для обозрения, что существенно вместе с опциями norock и map=normal. По умолчанию действует check=strict. uid=va/ue и gid=va/ue Присваивает всем файлам файловой системы указанные идентификаторы пользователя и группы, перекрывая информацию, найденную в расширениях Rock Ridge. По умолчанию приняты uid=0. gid=0. map=n[ormal] / map=o[ff] Для томов иного формата, чем Rock Ridge, транслирует ASCII- символы верхнего регистра в обычных именах файлов в символы нижнего регистра, опуская завершающую комбинацию ;1, но конвертируя точку с запятой в точку. С опцией map=off никакая трансляция имен не выполняется. По умолчанию принята map=normal. mode=vo/ue Для томов иного формата, чем Rock Ridge, присваивает всем файлам указанный режим доступа в восьмеричном формате (число начинается с 0). unhide Отображает также скрытые и связанные файлы. Ыоск=[512|1024|2048] Устанавливает размер блока в указанное значение; по умолчанию - 1024. Некоторые полезные опции для NFS rsize=8192 и wsize=8192 Устанавливает размер буферов соответственно для операций чтения и записи вместо принятого по умолчанию размера 1024. что существенно ускоряет NFS-подключения.
500 II Команды hard Позволяет программе, осуществляющей доступ к файлу системы NFS, "зависнуть", если что-либо происходит с сервером. Процесс не может быть прерван нли завершен, если только не указана опция intr. После восстановления работоспособности сервера NFS, программа продолжит обработку с того места, где ее застал сбой. soft Разрешает ядру установить тайм-аут, если сервер NFS не отвечает в течение некоторого времени. Период тайм-аута задается с помощью опции timeo=/i»ie. nolock He использует блокирования и даже не запускает lockd. Для подключений файловых систем Novell Netware и Samba существуют соответственно команды ncpmount и smbmount, организующие системный вызов mount и передающие ему необходимые аргументы. Так что текущая версия mount даже и не знает, кто ее вызывал (н ничего не знает о пер или smb). Пример # mount /mnt/cdrom t Но если суперпользователь добавит опцию user к строке /dev/cdrom файла /etc/fstab, то любой пользователь сможет монтировать CD-ROM вышеприведенной командой. Точка монтирования /mnt/cdrom скорее всего уже существует в вашей системе. t mount -t vfat /dev/hdcl /root/dos t Файловая система (fat32) на устройстве /dev/hdcl (первый раздел второго устройства IDE) подключена к каталогу /root/dos. Содержимое каталога можно отобразить обычной командой Is /root/dos. С помощью ср можно копировать разные файлы в этот каталог и из него и т.д. mountd msgfmt - см. rpc.mountd. создает двоичные МО-файлы. Синтаксис msgfmt [option] filename.po... Из файла PO (Portable Object - переносимый объект) создаст новый файл МО (Machine Object - машинио-зависимый объект). Опции -а, —alignment=nu;n/;er Выравнивает строки в соответствии с шланным параметром number числом байт; по умолчанию I.
II. Команды 501 -h, —help Выводит список опций и завершает выполнение программы —no-hash He включает хеш-таблицу в состав двоичных файлов, -о, —output-file=/i/e Указывает имя выходного файла. Если вместо имени указан дефис, производит запись на стандартный вывод. —strict Добавляет суффикс .то к имени файла, если имя его еще не содержит. Если эта опция не задана, имя выходного файла соответствует имени домена. -v, —verbose Обнаруживает и диагностирует аномалии входного файла. -V, —version Выводит информацию о версии и завершает выполнение программы. Если вместо входного файла указан дефис, производит считывание стандартного ввода. ITISCjmGrCJG - выполняет слияние двух мобильных файлов в стиле Uniforum. С т ксис msgmerge [option] def.po ref.po Файл def.po - существующий файл PO (Portable Object - переносимый объект), ранее оттранслированный, который был взят для обновления в соответствии с новым образцом РО. Файл ref.po -последний созданный обычно с помощью xgettext файл РО. Опции -D, — diTsctory=directory Добавляет указанный каталог в список маршрутов поиска входных файлов. -е, --no-escape Не использует в выводе управляющие символы языка С. Принято по умолчанию. -Е, —escape Использует в выводе управляющие символы языка С. —force-po Записывает РО-файл, даже если он пустой. -h, —help Выводит список опций и завершает выполнение программы. -i, —indent Записывает файлы с расширением .ро. используя отступы. -о, —output=/i/e Записывает результат обработки в указанный файл. —no-location Подавляет строки в формате #ммя_файла:строка. —add-location Генерирует строки в формате Шимяфайла.строка. Принято по умолчанию. —strict Записывает файлы .ро в соответствии с соглашением Uniforum (индексирует по их английским переподам). -V, —version Выводит информацию о версии программы и завершасг ее.
502 II Команды -w, — \\iiilh=number Устанавливает ширину выходной страницы. Основная задача программы msgmcrge "осветить" уже существующий файл LANG.po (см. диаграмму в описании команды xgcttext), сравнивая его с более новым временным файлом PACKAGE.pot, извлеченным с помощью xgcttext из последнего варианта исходного текста на языке С. ITlt - управляет операциями на магнитной ленте, установленной на соответствующем устройстве. Синтаксис mt [-h][-f device] operation [count]\arguments...] Опции -h Выводит список команд. -v Выводит информацию о версии программы. -f device Задает маршрут к накопителю на магнитной ленте, или НМЛ. mt выполняет заданную операцию operation, которая может быть одной из нижеперечисленных. Некоторые операции принимают необязательные аргументы arguments или счетчики повторений count, идущие в командной строке после названия операции и по умолчанию равные 1. Для определения НМЛ служит опция -f, если она не задана, используется переменная окружения ТАРЕ, а если и переменная не установлена, берется устройство, описанное в файле /usi7include/sys/mtio.h. Не все из перечисленных операций работают во всех системах и для всех типов НМЛ. Многие операции принимают необязательный параметр, или счетчик повторений, который обычно задается после названия операции и по умолчанию равен 1. Операции fsf Перематывает МЛ вперед на count файлов и позиционирует ее на первом блоке следующего файла. fsfm Перематывает МЛ вперед на count файлов и позиционирует ее на последнем блоке предшествующего файла. bsfm Перематывает МЛ назад на count файлов и позиционирует се на последнем блоке предшествующего файла. bsf Перематывает МЛ назад на count файлоп и позиционирует ее на первом блоке следующего файла. asf Устанавливает МЛ в начало файла, заданного по номеру count. Вначале выполняется реверс МЛ, а загем уже перемещение пперед к указанному файлу. fsr Перематывает МЛ вперед на count записей.
II. Команды 503 bsr fss bss eod, seod rewind Перематывает МЛ назад на count записей. Перематывает МЛ вперед на count ленточных марок. Применяется для SCSI-устройств. Перематывает МЛ назад на count ленточных марок. Применяется для SCSI-устройств. Перематывает действительно к концу информации, обычно чтобы дописать данные. Выполняет реверс, или перематывает МЛ к началу. offline, rewoffl Перематывает МЛ и, если возможно, разгружает носитель. retension weof, eof wset erase status seek tell setpartition partseek mkpartition load lock unlock setblk setdensity Перематывает МЛ к началу, затем к концу, а затем вновь к началу. Записывает в текущей позиции count ленточных маркеров. Записывает в текущей позиции count ленточных маркеров. Только для SCSI-устройств. Очищает МЛ. Распечатывает информацию состояния данной МЛ. Только для SCSI-устройств. Ищет указанный блок count. Эта операция доступна лишь для некоторых стримеров и ленточных устройств SCSI-2. Адрес блока должен быть предварительно получен с помощью tell. Уведомляет о текущем блоке МЛ. Эта операция доступна лишь для некоторых стримеров и ленточных устройств SCSI-2. Только для SCSI-устройств. Переключает на указанный раздел count. По умолчанию count равен 0. Такое переключение должно поддерживаться устройством. Существуют ленточные устройства, поддерживающие несколько разделов, и в этом случае МЛ должна быть отформатирована соответствующим образом. Только для SCSI-устройств. Позиционирует МЛ на блоке count раздела countb. По умолчанию countb равен 0. Аргумент countb должен следовать за count. Только для SCSI-устройств. Форматирует МЛ с одним, в этом случае count равен 0, или с двумя разделами, при этом count отражает размер второго раздела в мегабайтах. Подобная разбивка на разделы должна поддерживаться устройством. Только для SCSI-устройств. Загружает МЛ в устройство. Только для SCSI-устройств. Блокирует устройство таким образом, что невозможно извлечь носитель. Только для SCSI-устройств. Снимает блокировку (см. lock). Только для SCSI-устройств. Устанавливает размер блока ycrpoilci ва в значение count (байты). Только для SCSI-устройств. Устанавливает плотность записи на МЛ в значение count. Такую установку приходится назначать, сообраз> ясь с возможностями самого устройства.
504 И Команды Только для SCSI-устройств. Записывает на стандартный вывод некоторые наиболее употребительные значения плотностей записи. Только для SCSI-устройств. Устанавливает код буфера ленточного устройства в значение count. Для небуферизованной операции значение count равен 0. Значение следует выбирать, сообразуясь с документацией конкретного ленточного устройства, compression Только для SCSI-устройств. Включает компрессию (сжатие) информации, если такая функция поддерживается устройством, что не всегда имеет место. Для 8-миллиметровых устройств Exabyte компрессию определяют коды плотности. stoptions Только для SCSI-устройств. Устанавливает биты опций драйвера устройства в указанные значения. Такая операция разрешена только для суперпользователя. Биты устанавливаются путем использования следующих ключевых слов: buffer-writes разрешает буферизацию при записи async-writes разрешает асинхронную запись read-ahead предварительно настраивает на чтение блоков фиксированного размера debug устанавливает режим отладки, если драйвер компилировался с такой возможностью two-fms при закрытии файла записывает два ленточных маркера (два маркера конца файла) fast-eod производит позиционирование к концу информации на МЛ автоматически блокирует/разблокирует устройство определяет размер блока и плотность записи разрешает обратную перемотку auto-lock def-writes can-bsr no-blklimits не поддерживает ограничения размера блока при чтении can-partitions поддерживает разбивку на разделы scsi21ogical позволяет использовать логическую адресацию блоков для операций seek и tell вместо зависящей от устройства адресации sysv разрешает семантику System V stsetoptions Только для SCSI-устройств. Устанавливает выбранные биты опций драйвера устройства. Методы указания бит приведены в описании операции stoptions. Доступна только суперпользоватслю. stclearoptions Только для SCSI-устройств. Очищает выбранные биты опций драйвера. Методы указания бит приведены в описании операции stoptions. Доступна только суперпользователю. stwrthrcshold Только для SCSI-устройств. Устанавливает предельное значение сойм при записи на ленточное уст ройстно Это значение в килобит а\ не чолж-
II. Команды 505 ®- но превышать размер буфера драйвера. Доступна юлько сулерпользо- вателю. defblksize Только для SCSI-устройств. Устанавливает размер блока по умолчанию ^ в значение count (байты). Значение А отменяет принятый по умолча- ^ нию размер. Причем размер блокаГустановленный с помощью setblk, перекрывает принятый по умолчанию до тех пор, пока не будет установлена новая МЛ. Доступна только суперпользователю. defdensity Только для SCSI-устройств. Устанавливает код плотности по умолча- гл нию в значение count. Значение -1 отменяет принятую по умолчанию ^ плотность записи. Плотность записи, установленная с помощью setdensity, перекрывает принятую по умолчанию до тех пор, пока не будет установлена новая МЛ. Доступна только суперпользователю. defdrvbuffer Только для SCSI-устройств. Устанавливает код буфера по умолчанию в значение count. Значение А отменяет принятый по умолчанию код бу- фера. Код буфера устройства, установленный с помощью drvbuffer, перекрывает принятый по умолчанию до тех пор, пока не будет установлена новая МЛ. Доступна только суперпользователю. defcompression Только для SCSI-устройств. Устанавливает значение компрессии поумол- _ чанию. Значение А отменяет принятое по умолчанию. Значение комп- рессии, установленное с помощью compression, перекрывает заданное по умолчанию до тех пор, пока не будет установлена новая МЛ. Доступна только суперпользователю. sttimeout Устанавливает период обычного тайм-аута устройства в секундах. Доступна только суперпользователю. stlongtiraeout Устанавливает период удлиненного тайм-аута устройства в секундах. Доступна только суперпользователю. datcompression Для некоторых устройств интерфейса SCSI-2. Осведомляется о состоянии сжатия (on/off - включено/отключено) и устанавливает его, используя SCSI-команды, посылаемые mt. Если count отсутствует, печатает только информацию о сжатии. Если count равен 0, или off, отменяет компрессию, в противном случае устанавливает ее. Сжатием информации на МЛ можно управлять с помощью одной из команд mt под названием compression лишь для ядер выше 1.3.84. Доступна только суперпользователю. ITlV - перемещает или переименовывает файлы или К каталоги. Синтаксис ov [option].. .воигсе deet ov [option].,.воигсе...directory
506 II Команды Если последний аргумент командной строки является существующим каталогом directory, переносит каждый указанный файл source в файл с тем же именем в заданный каталог. Если только указаны два файла, переименовывает первый файл source во второй dest. Если последний аргумент командной строки не является каталогом и задано более двух файлов, mv завершается с ошибкой. Начиная с версии 4.0, команда mv может переносить любые типы файлов между файловыми системами. Она даже может перемещать полную иерархию каталогов, включая специальные файлы устройств, из одного раздела диска в другой. Опции -b method, — backup[=method] Производит резервное копирование каждого файла, который будет перезаписан или удален. Значения, которые может принимать параметр method, смотрите в описании команды In (опция -V). -f, --force Удаляет существующие выходные файлы без подтверждения пользователя. -i, —interactive Требует подтверждения при перезаписи существующего выходного файла. Если ответ пользователя не начинается с буквы у или Y, пропускает файл. -и,—update He перемещает исходный файл, если существующий выходной файл имеет такое же или более новое время модификации. -V,—verbose Перед перемещением печатает имя каждого файла. —strip- trailing-slashes Отбрасывает из аргумента source любые завершающие слэши. -S suffix, ~suffix=suffix Добавляет указанный суффикс к каждому резервному файлу, создаваемому с помощью опции -Ь. —target-directory=<#rectory Указывает выходной каталог directory. -V method, —version-contro[=method Меняет тип резервного файла, создаваемого с помощью опции -Ь. Значения аргумента method см. в описании команды In. Пример $ mv prim» /uer/RAB $ Перемещает файлы prim* (используется символ подстановки *) в катапог /usr/RAB. Одна команда mv может переместить весь каталог вместе с содержащимися в нем файлами и подкаталогами: $ mv /home/misha/rab/person. $
II. Команды 507 ПЭПЛ6С1 - запускает сервер службы доме ных имен Internet К. Синтаксис named 1-d ieveil[-p port [localport]][-Ь startfile][-q][-r] named -это программа, обеспечивающая работу службы DNS на большинстве Unix- машин; обеспечивает услуги по разрешению имен для обычных клиентов и для других серверов имен. Обычно named запускается в момент начальной загрузки системы и работает до выключения компьютера. При запуске named читает содержимое файла /etc/named.boot и все указанные в нем файлы зон, содержащие данные о соответствии доменных имен сетевым адресам и загружаемые при необходимости с первичных серверов. Далее named начинает ожидать поступления запросов DNS на порт 53 (по умолчанию). Опции -d level Устанавливает режим отладки; числовое значение level определяет уровень выводимых сообщений. -р port [localport] Задает нестандартные номера портов. Первый порт будет задействован для соединений с дистанционными серверами, а второй порт localport назначает себе для отладки локальная копия named. -b startfile Использует в качестве стартового указанный файл. -q Анализирует и отслеживает все входящие запросы. -г Отключает режим рекурсии: предполагается, что ответы приходят лишь от локальных зон. Эта опция имеет смысл только для начальных серверов. Файл /etc/named.boot содержит в основном указатели на мастер-файлы, включающие в себя информацию о зоне и указатели на другие серверы имен. Вся информация мастер-файлов состоит из множества записей о ресурсах (RR - Resource Records). Каждая такая запись относится к определенному типу. Поля записи разделяются пробелами или символами табуляции. Ниже приведен список основных типов записей о ресурсах: SOA (Start of Authority) описывает зону авторизации: записи, следующие после этой, содержат информацию об именах конкретного домена А (Address-адрес) связывает IP-адрес с именем узла; для каждого узла указывается только одна запись типа А, содержащая официальное, или каноническое имя NS (Name Server) указывает на первичный и вторичные серверы имен некоторой зоны CNAME связывает псевдоним узла с его каноническим именем
508 II Команды PTR предусматривает определение имени сетевого узла на основе его IP-адреса MX (mail exchanger - почтовый обмен) указывает сервер, через который происходит обмен почтой для домена HINFO содержит информацию о программном и аппаратном обеспечении системы netCfO - помогает конфигурировать различные сетевые интерфейсы вашей системы на протоколе TCP/IP. Синтаксис netcfg Можно запустить netcfg, чтобы добавить сетевой интерфейс или альтернативную информацию о серверах имен и именах сетевых узлов. Войдите в систему как суперпользователь и выберите Main Menu (Системные меню) ■* AnotherLevel menus (AnotherLevel меню) ■* Administration ■* Network Configuration или просто наберите в командной строке netcfg. На экране отобразится диалоговая панель. С помощью 4-х кнопок в верхней части панели пользователь может сконфигурировать разные аспекты сети: а Кнопка Names. Позволяет ввести для своей системы имя сетевого узла, которое хранится в переменной HOSTNAME в файле/etc/sysconfig/network и адреса серверов имен, которые хранятся в файле /etc/resolv.conf. а Кнопка Hosts. Отображает текущее содержимое файла /etc/hosts, позволяет добавлять, удалять и редактировать его элементы. Q Кнопка Interfaces. Позволяет добавить новый сетевой интерфейс, определить его IP-адрес, активизировать интерфейс. Информация по интерфейсам хранится в различных файлах каталога /etc/sysconfig. Q Кнопка Routing. Позволяет добавить статические маршруты в сетях передачи данных. Каждый маршрут отображает шлюз к указанной сети. П • име • На рисунке представлен образец конфигурирования с помощью netcfg. Можно определить до 3-х серверов имен доменов. Щ Network Configurator Names ' Hosts Interfaces | Routing [kmp30.125-24.popuiar.net [l25-24.popular.net Hostname: Domain: Search for hostnames in additional domains: I 1 Nameservers: '207.210.38.40 207.210 38.60
nGtStSt - проверяет состояние вашей сет Синтаксис netstat [ -venaocs ] [ — tcp | -t ] [ — udp | -u ] 1 —raw | -w ] [ — groups | -g J [ —unix | -x ] [— inet|— ip][~ax25][— ipjc)[— netrom] netstat I -venc ](—inetjl—ipx][ —netrom] [ —ddp ] I — ax2 5 J {—route | r } netstat [-venpac]{—interfaces|-i>[iface] netstat [-enc]{—masquerade|-M} netstat [-cn]{—netlink|-L} netstat {-V|—version}{-h|—help} Отображает информацию о сетевых подсистемах Linux: сетевых подключениях, таблицах маршрутизации, статистике интерфейсов, IP-маскировании и т.д., и т.п. Без всяких опций уведомляет о состоянии активных сетевых подключений, перечисляя открытые сокеты. Опции -a, —all Печатает информацию о всех сокетах, включая сокеты сервера, установленные на прослушивание. -1, —listening Печатает информацию только о серверных сокетах, установленных на прослушивание. -t, —extend Сообщает некоторую дополнительную информацию: идентификатор пользователя и дескриптор этого подключения. -р, —programs Сообщает дополнительную информацию о программе, использующей сокет: идентификатор процесса и имя программы. -v, —verbose Подробно сообщает о подключениях, а также об известных подключениях, которые не поддерживаются данным ядром. -г, —route Отображает таблицы маршрутизации ядра, как команда route -е. Команда netstat -er использует формат вывода команды route. -g, —groups Отображает многоадресные пакеты для протоколов IPv4 и IPv6. -i, —interfaces [iface] Печатает таблицу всех сетевых интерфейсов или только указываемых параметром iface. Вывод выполняется в формате команды ifconfig -е. Команда netstat -ei печатает всю таблицу или информацию об единственном интерфейсе, как это делает ifconfig. Указав переключатель -а, вы можете получить информацию о тех интерфейсах, которые даже не сконфигурированы. -М, —masquerade Отображает список всех замаскированных сеансов. 11оддсржка маскирования позволяет скрыть узлы с неофициальными сетевыми адресами от внешнего мира.
510 II К -L, -netlink Вызывает информацию о современной коммуникационной поддержке типа ядро/пользователь, называемой netlink. Современные ядра поддерживают такое взаимодействие между ядром и пользователем. -n, —numeric Выводит числовые адреса в точечной нотации, не пытаясь установить имя порта или имена пользователей. -A, —uffamilv Использует различные методы, чтобы установить адресуемые семейства, для которых поддерживается маршрутизация. Под семейством понимается список ключевых слов, разделенных запятыми, например, inet, ipx, ax25 и т.д. Такой же эффект дает использование длинных опций: -inet, -ipx, -ax25 и т.д. -с, —continous Отображает ежесекундно текущее состояние сети до тех пор, пока пользователь не прервет этот процесс. -t, —tcp Отображает активные соединения через сокеты TCP. -u, —udp Отображает активные соединения через сокеты UDP. -w, —raw Отображает активные соединения через низкоуровневые сокеты RAW. -х, —unix Отображает информацию о доменных сокетах UNIX. -о, —timers Добавляет информацию о состоянии таймера: включен/выключен, время, оставшееся до тайм-аута, количество попыток. Ниже приведены описания полей вывода, возникающих при использовании разных опций netstat. Активные lnternet-подклю (TCP, UDP, RAW) Proto Протокол (tcp, udp или raw) соединения. Recv-Q Количество байт, еще не скопированных пользовательской программой, подключенной к этому сокету. Send-Q Количество байт, отосланных, но не распознанных дистанционным узлом. Local Address Локальный адрес, или адрес локального узла, и порт сокета. Если только не указана опция -п, адрес сокета транслируется в каноническое имя, а номер порта - в имя соответствующей службы. Foreign Address Это поле аналогично предшествующему, но вся информация относится к дистанционному узлу. State Описывает текущее состояние сокета, принимая следующие значения: ESTABLISHED соединение установлено SYNSENT сокет активно пытается установить соединение с дистанционным узлом SYN_RECV соединение устанавливается FINWAIT1 сокет закрылся и ждет ра фыва соединения FINWAIT2 соединение закрылось; сокет ожидает закрытия со стороны дистанционного узла
II Команды 511 CLOSED сокет не используется CLOSED_WAlT дистанционный сокет закрыл соединение, локальный сокет тоже ожидает закрытия LASTASK дистанционный сокет завершил соединение, локальный сокет ожидает подтверждения LISTEN сокет прослушивает входящие подключения CLOSING оба сокета закрыли соединение, но не все отправленные данные получены UNKNOWN состояние сокета неизвестно User Имя или UID владельца сокета. PID/Program name PID (идентификатор процесса) и имя программы, поддерживающей этот сокет. Появлению этого поля способствует опция -р. Timer Поле пока не заполняется. Поля активных доменных сокетов Ur" Такие сокеты используются во взаимодействии между процессами в файловой системе Unix. Процесс создает специальные файлы, которые затем открываются и используются другими процессами. Таков механизм взаимодействия между процессами в Unix. Proto Протокол, используемый сокетом, обычно unix. RefCnt Счетчик процессов, подключенных к этому сокету. Flags К наиболее интересным относится флаг SOACCEPTION (АСС), показывающий, что сокет никем не используется, а процесс, создавший этот сокет, ожидает подключения. Туре Определяет режим доступа к сокету и принимает одно из следующих значений: " сокет используется в режиме дейтаграммы сокет используется в режиме потока (с соединением) используется низкоуровневый режим сокета этот режим обеспечивает надежную доставку сообщений SOCKSEQPACKET сокет обеспечивает режим последовательных посылок UNKNOWN неизвестный режим; в этом поле стоит чефпс State Определяет текущее состояние сокета и содержит одно из следующих значений: FREE сокет не распределен LISTENING сокет прослушивает запросы на подключение; отображается в листинге, если только заданы опции -а, -I SOCK_DGRAM SOCK_STREAM SOCKRAW SOCK RDM
512 И Команды CONNECTING пытается установить соединение CONNECTED сокет установил соединение DISCONNECTING сокет пробует разорвать соединение пустое поле сокет ни к кому не подключен UN KNOWN такое состояние не должно возникать в обычных условиях PID/Program name PID (идентификатор процесса) и имя программы, поддерживающей этот сокет. Path Отображает маршрут, по которому процессы подключаются к сокету. Пр мер $ netstat -i Kernel Interface table Iface НТП Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Fig ethO 1500 0 3156 0 0 0 1839 0 0 0 BRU lo 3924 0 18 000 18 000 LRU $ В этом случае листинг отображает текущее состояние интерфейсов обратной петли (1о) и Ethernet. Ниже описано содержимое столбцов листинга: Iface имя интерфейса MTU Maximum Transfer Unit - максимальное количество байт, которое может содержать пакет RX-OK и ТХ-ОК количество безошибочно принятых (RX) и отправленных (ТХ) пакетов RX-ERR и TX-ERR количество принятых и отправленных ошибочных пакетов RX-DRP и TX-DRP количество пакетов, отброшенных при приеме и отправке RX-OVR и TX-OVR количество пакетов, потерянных из-за переполнения (чрезмерной загрузки сети) на приеме и отправке Fig флаги, принимающие следующие значения: В разрешена широковещательная передача данных L loopback-интерфейс (интерфейс обратной петли) R интерфейс запущен U интерфейс активен newmail - уведом "-т • «ступл- Синтаксис newmail [-d][-i interval] [-w] file-spec {file-spec } wnewmail [-d][-i interval\l-u] file-spec {file-врес } Осуществляет проверку списка указанных почтовых ящиков и отображает список почты, поступившей в любой из ящиков, указывая имя отпрпви геля и тему сообщения.
II. Команды 513 Опции _d Включает режим отладки. -i interval Устанавливает интервал проверки почтовых поступлений в секунадх. По умолчанию принято значение 10 секунд. -w Запускает программу в окне. Такого же эффекта можно достигнуть, просто вызывая wnewmail. Аргумент file-spec определяет имя проверяемой почтовой папки или ящика. В общем аргумент состоит из двух компонентов: префиксной строки и собственно имени папки. В качестве префиксной строки можно задать имя пользователя, чья папка подлежит проверке, или указать стандартные метасимволы elm. По умолчанию в качестве проверяемой папки используется ваш почтовый ящик входящих сообщений. Пример Здесь представлен протокол работы ncwmail. В строке с префиксом » сообщается, от кого получено почтовое сообщение и через дефис — его тема. н. mishe@localhost.localdomain: /home/misha . CmishaGlocalhost misha]$ neumail CmishaGlocalhost misha]$ ps ! PIB TTY TIME DID ! 1079 pts/0 00:00:00 bash i 1090 pts/0 00:00:00 neumail ! 1091 pts/o 00:00:00 Ps . CmishaGlocalhost mishalt | » Mai 1 from sklovskaja - book . CmishaGlocalhost mishaJt I news.daily осуществляет регулярное системное администрирование в Usenet. Синтаксис news.daily [keyword] news.daily выполняет ряд важных административных функций: отчет о состоянии, удаление старых статей новостей Usenet, обработка журналов (log-файлов), ротация журнальных архивов, перенумерация файла active, удаление любых старых файлов сокетов, найденных в каталоге брандмауэра, накопление выходного диагностического файла. Эта программа запускается под ID администратора новостей, а вовсе не суперпользователя. Указывая в командной строке ключевые слова keyword, можно модифицировать выполняемые функции и менять аргументы, передаваемые expire, expireover или expireindex. Программу news.daily желательно запускать раз в день обычно с помощью сгоп: чтобы препятствовать ее нескольким одновременным исполнениям, применяется программа shlock. Ключевые слова delayrm Использует флаг -г при вызове expire, expireover пли expireindex. Имена удаляемых статей будут записаны во премсниый файл, а татем переименованы в результате пызова expirerm. Гели опреюлено кчн>-
514 II Команды expctl=paf/i expdir=pafA nostat notdaily noexpire noexplog чевое слово delayrm, предполагается, что неявно задано и ключевое слово expireovcr. С помощью маршрута path указывает файл, используемый expire в качестве файла expirc.ctl (см. expire). По умолчанию expire создает новый файл history и БД в том же самом каталоге, где находятся текущие файлы. С помощью path выбирает новый каталог для упомянутого размещения. С помощью флага -d этот параметр передается expire. Без этого ключевого слова в первую очередь создается отчет состояния. Это ключевое слово отменяет отчет, создаваемый innstat. По умолчанию запуск news.daily осуществляется только раз в день, при этом она выполняет различные действия (ротация журналов), которые не стоит делать более чем раз в день. Используя это ключевое слово, можно запускать news.daily в любое время, и обычные процессы регистрации в журналах и ротация не будут выполняться. По умолчанию expire вызывается для удаления старых статей новостей. Данное ключевое слово отменяет эту функцию. Обычно expire добавляет информацию в журнал <pathlog in inn.conf>expire.log. Это ключевое слово "заставляет" поддерживать вывод expire как часть вывода news.daily. Но данное ключевое слово неэффективно, если используется noexpire. flags='expire args1 Меняет аргументы, передаваемые expire, на 'expire args'. По умолчанию expire вызывается с аргументом '-vl'. Если необходимо передать несколько аргументов, используются кавычки. Это ключевое слово неэффективно, если используется noexpire. nologs Отменяет процесс регистрации в журналах. norotate По умолчанию процесс регистрации включает ротацию и очистку журналов. Данное ключевое слово это отменяет: информация журналов только считывается. Данное ключевое слово неэффективно, если используется nologs. Ключевое слово norotate будет передано scanlogs, если она вызывается. Обычно для всех групп новостей переустанавливаются метки low-water. Это ключевое слово отменяет для ctlinnd все операции перенумерации. По умолчанию любой сокет ctlinnd, который не модифицировался в течение двух дней, подлежит удалению. Использование этого ключевого слова отменяет стандартную функцию. Посылает почтовое сообщение с результатами работы news.daily на стандартный вывод и в стандартный файл ошибок вместо того, чтобы отправить его администратору. Обычно все вызываемые утилиты перенаправляют свои файлы стандартного вывода и ошибок в какоП-нигл чь файл. Если этот файл пустой, никакое сообщение не отправляется. norenumber nomail
II. Команды 515 expireover Программа expircovcr вызывается по истечении срока хранения для очистки БД просмотренных сообщений или индексов Ьсли в inn.conf включена опция storageapi, вместо expireover вызывается программа expireindex. хотя если отсутствуют данные для просмотра, нет никакой необходимости задавать ключевое слово expireover. В этом случае сервер новостей работает только для подпитки. expireoverflags-'expireover args' Если используется ключевое слово expireover, оно может также применяться для определения флагов, передаваемых expireover или expireindex через строку 'expireover args'. Если используется ключевое слово delayrm, по умолчанию передается флаг -z и список удаленных файлов. В противном случае по умолчанию передается флаг -s. Ifulllpalhl Полный маршрут /full/path/ указывает программу, которая будет исполняться до проведения каких-либо действий, связанных с истечением срока хранения. Типичное применение - задать ключевое слово noexpire и определить с помощью данной опции альтернативную программу. lowmark Для перенумерации файла active применяет метку lowmark демона ctlinnd. Обычно операция перенумерации занимает довольно много времени, с ключевым словом lowmark его понадобится куда меньше. Если задано ключевое слово lowmark, нет необходимости определять ключевое слово norenumber, так как news.daily указывает его неявно. nGWSrGCJUGUG - инструмент для перезаписи пакетных файлов службы новостей. Синтаксис newsrequeue [-a active] [-h history] [-d days] [-l][-n newsfeeds][input] Используется, чтобы перезаписать пакетные файлы после серьезного сбоя системы. Программа newsrequeue работает в двух режимах. В первом режиме сначала считывает файлы active и newsfeeds, чтобы установить, куда распределяются разные группы новостей. Затем открывает БД history. Раз файлы открыты, newsrcqucue считывает указанный файл input или стандартный ввод, если файл не задан. В каждой строке имеется уникальный идентификатор сообщения Message-ID, заключенный в угловые скобки. Любой другой текст в строке игнорируется. Программа, работающая в этом режиме, принимает в качестве входного файл history илн его завершающее подмножество. newsrequeue использует первые два поля каждого элемента файла newsfeeds - имя сайта и подполе exclude, шаблоны и подполе distrib (куда распределять) за исключением шаблонов, которые начинаются с символа @. Программа игнорирует все флаги в третьем поле за исключением предназначенных для поля N, определяющего регулируемость групп новостей; четвертое поле игнорируется полностью. Вывод содержит по одной строке для каждой статьи, которая может быть перепоручена; в дальнейшем передается от собственного имени узла, которому была поручена. Каждая такая строка содержит Mcssaf-e-lD. имя файла и список сайтов, намеченных для получения статьи. Вывод пригоден для передачи по конвейеру filcchan.
II. Команды Если .задан флаг -I, применяется второй режим, в котором newsrequeue считывает содержимое файла input или стандартного ввода, если файл не задан. Каждая строка напоминает элемент файла регистрации (журнала) innd. Программа проверяет эти элементы для пришедших статей, по Message-ID находит в БД history имя файла, а затем просматривает список сайтов. Если в файле inn.conf включена опция storageapi. программа newsrequeue всегда запустит этот режим, независимо от флага -I. Опции -a active Указывает альтернативное расположение файла active. -n newsfeeds Указывает альтернативное расположение файла newsfeeds. -h history Указывает альтернативное расположение БД history. -d days Будет обрабатывать только статьи, полученные в указанном параметром days диапазоне дней. -1 Считывает элементы файла регистрации демона innd вместо элементов файла history. nfsd см. r«c.nfs<± к nfsstat распечатывает статистику NFS. Синтаксис nfsstat I-anrcsz][-о facility],.. On ии -s Печатает только статистику со стороны сервера. По умолчанию печатается статистика серверная и клиентская. -с Печатает только статистику со стороны клиента. -" Печатает только статистику NFS без информации о RPC. -v, —version Печатает информацию о текущей версии программы и завершает ее. -г -z -о facility По умолчанию печатается информация по NFS и RPC (см. rpc.nfsd). Печатает только статистику RPC. Обнуляет счетчики статистики ядра. Отражает статистику по указанной возможности/ас;7//>% принимающей одно из следующих значений: nfs информация по протоколу NFS без RPC-вызовов грс общая информация по RPC net статистика сетевого уровня: количество полученных пакетов, число TCP-подключений и т.д.
II. Команды 517 fh дополнительная информация по поддержке кэша на файл-сервере гс дополнительная информация по кэшу запросов/ответов сервера П1С6 - печатает или модифицирует планируемый прио- 1ч ритет заданий. Синта nice [option]...[command [arg]...] Если никакие аргументы не заданы, печатает текущий планируемый приоритет. В противном случае nice запускает команду command (arg-ee аргументы) с приращением (с поправкой) планируемого приоритета. Значение приращения приоритета может быть назначено командой nice в диапазоне от -20 (наивысший приоритет) до 19 (низший приоритет). Многие оболочки имеют встроенную команду под именем nice. Но здесь речь пойдет о GNU nice. Опции -n adjustment, -adjustment, ~adlustmeiit=adjustment Добавляет указанное приращение (поправку) к приоритету команды. По умолчанию добавляет 10. Только суперпользователь может указать отрицательное приращение приоритета. П имер $ nice -5 wc prim* > sumdop & 12147 $ Команда, приведенная выше, использует приращение приоритета, равное 5, что приводит к понижению приоритета, присвоенного процессу wc. # nice —10 mainjob fi I Такую команду может запустить только суперпользователь, что приведет к повышению приоритета задания mainjob. П1 - нумерует строки файлов. 9интакс с nl I option]... [fНе]... Записывает на стандартный вывод каждый из перечисленных файлов file с дооав- ленными номерами строк. Если никакой файл не задан или вместо имени файла укалш дефис, считывает стандартный ввод
518 II К маеды Опци -b, ~body-numbenng=i(y/e Использует указанный стиль нумерации строк, по умолчанию предпо- лагает -bt. -d, —section-deIimiter=cc Задает разделитель (два символа) логических страниц. Второй отсутствующий символ указывается точкой. -f, —footer- numbering=x(y/e Использует указанный стиль для нумерации строк колонтитулов, по умолчанию считает -fn. -h, —header- numbering=s(y/e Использует указанный стиль для нумерации строк заголовка, по умолчанию полагает -hn. -i, ~page-increment=/iumfce/' Указывает для каждой строки приращение номера строки. По умолчанию принимает -il.^vjT) -1, —join-blank-lines= number Указывает количество number подряд идущих пустых строк, рассматриваемых как одна строка. По умолчанию принимает -Н:-»^ -п, — number-formar^/oraaf Вставляет номера строк в соответствии с заданным форматом, по умолчанию принимает -пгп. -р, —no-renumber Не переустанавливает номер строки после логической страницы. -s, —number-separator=i(n"«g Добавляет указанную строку string после номера строки. По умолчанию принимает символ табуляции. -v, — starting-line-number= number Указывает номер первой строки на каждой логической странице, по умолчанию считает -vlr-vnv -w, — number-width=TOm6er Использует указанное количество символов для нумерации строк, по умолчанию - 6. —help Выводит опции программы и завершает ее. —version Выводит информацию о версии программы и завершает ее. Можно указать такие разновидности стиля: а нумерует все строки t нумерует лишь непустые строки п по умолчанию не нумерует строки заголовка и колонтитула preg нумерует только строки, содержащие выражение reg Параметр formal может принимать одно из следующих значений: 1 п выравнивает по левой границе (без начальных нулей)
II. Команды 519 rn rz ГЬиме- выравнивает но правой границе (без начальных нулей) выравнивает по правой границе (с начальными нулями) ш\ rnisha@localhost.localdornain: /home/misha catCmishaGlocalhost misha]* cat nnnr KflK много девушек хороших, Кйк много ласковых имен. Но лишь одно из них тревожит. Унося покой и сон, когдя елквлен. CnishaGlocalhost mishalt nl -u5 -vlO -s "песня " nnnr Юпесня Кик много девушек хороших, Ипесня Кйк много лйсковых имен, 12песня Но лишь одно из них тревожит, 13песня Унося покои и сон, когдя елквлен, [mishaGlocalhost misha]* В nlmconv - преобразует объектный код в формат NLM. Синтаксис nlmconv [-I bfdname\—input-target=jb/dnainej (-О bfdname | —output-target=Jbfdname] [-T headerfile]—header-file=headerfile] [-V|—version]!—help] infile outfile Программа nlmconv преобразует настраиваемый объектный файл infile в NLM (Netware Loadable Module - загружаемый модуль Netware) по имени outfile. в ряде случаев для заполнения header (заголовка) NLM читает файл headerfile. Работающим с этой командой следует ознакомиться с руководством "The NetWare Tool Maker Specification Manual" от фирмы Novell, Inc. В настоящее время программа работает с объектными файлами i386 в форматах COFF, ELF или a.out, а также с объектными файлами SPARC в форматах ELF или a.out. Для чтения файла infile программа nlmconv использует GNU Binary File Descriptor library (GNU BFD library - библиотеку дескрипторов двоичных файлов). Опции -I bfdname, — input-target=6/tfname Предполагает, что формат исходного объектного файла определяется именно значением bfdname. -О bfdname, — output-target=i/i/n«we Записывает выходной файл в объектном формате bfdname. Хотя обычно предполагается, что выходной формат основывается на входном формате, а именно: для входного файла 1386 устанавливается выходной формат nlm32-i386. -Т headerfile, —headei-f\\e-headerfile Считывает headerfile для создания header (заголовка) NLM. -V, —version Выводит информацию о версии npoi раммы и завершает ее работу, --help Выводит информацию об опциях программы и завершает ее работу.
520 II Команды ГИТ! - распечатывает символы (идентификаторы) из объектных файлов. интаксис пш Г -a -debug-syms ] [ -g | -extern-only] [ -В] [ -С | —demangle ] [ -D | —dynamic ] 1-е -print-armap) I -А | -о | -print-1 ile-name ] [ -n | -v —numeric-sort ] [_p —no-sort] [-r j—reverse-sortH— size-sort] [-u|— undefined-only] [-1 —line-numbers][—help] [—version] [-t radix\—iadix=radix] (_P —portability][-f format] — foimat=format\ [— target=i>fdname] \objfile...\ Распечатывает идентификаторы из объектного файла objfile, если этот аргумент не задан, ищет файл a.out. Опции -А, -о, — print-file-name Идентифицирует каждый символ (идентификатор) по имени входного файла, где он был обнаружен, вместо того, чтобы однажды идентифицировать входной файл перед всеми его символами. -а, — debug-syms Выводит только идентификаторы отладчика, обычно в стандартном режиме это не выполняется. -В Используется для совместимости с nm на процессорах MIPS. -С, —demangle Преобразует низкоуровневые имена идентификаторов в высокоуровневые, ранее определенные пользователем. Чтобы сделать имена функций C++ удобными для чтения, удаляет некоторые символы подчеркивания, специально предусмотренные системой. --no-demangle Эта опция используется по умолчанию: не выполняет преобразований низкоуровневых имен идентификаторов. —D, —dynamic Выводит только динамические символы (идентификаторы); эта опция существенна для динамических объектов, таких, как совместно используемые (разделяемые) библиотеки. -f formal, —format=/orma( Использует выходной формат./Ъгта/, который может принимать такие значения: bsd, sysv или posix. А вообще, существенна только первая буква формата, она может быть строчной или прописной. -g, —extern-only Распечатывает только внешние идентификаторы. -1, —line-numbers Пытается отыскать для каждого символа (идентификатора) имя его файла и номер строки, используя отладочную информацию Для определенных символов осуществляется поиск номера строки по адресу символа. Для неопределенных символов пытается определить номер строки элемента, ссылающегося на этот символ.
II. Команды 521 -n, -v, —numeric-sort Осуществляет числовую сортировку символов (идентификаторов) по их адресам вместо того, чтобы выполнять алфави гную сортировку по именам. -р, —no-sort Вообще не выполняет сортировку идентификаторов: распечатывает их в произвольном порядке. -Р, —portability Вместо формата по умолчанию использует для вывода стандарт POSIX.2. Эта опция эквивалентна -f posix. -s, — print-armap Когда распечатывает идентификаторы компонентов архива, созданного с помощью аг или ranlib, включает индекс для разрешения имен. -г, —reverse-sort Производит числовую или алфавитную сортировку в обратном порядке: последний идентификатор становится первым. —size-sort Сортирует идентификаторы по размеру. Распечатывается размер идентификатора вместо его значения. Л radix, —radix=faA'x Использует формат, задаваемый параметром radix, для распечатки значений символов (идентификаторов). Допускаются следующие значения: d - десятичный формат о - восьмеричный формат х - шестнадцатеричный формат —target=6/i/«arae Указывает формат объектного кода, отличающийся от принятого в системе по умолчанию. -u, —undefined-only Выводит только неопределенные символы. —defined-only Выводит только определенные (объявленные) символы. -V, —version Выводит информацию о версии программы и завершает ее работу. —help Выводит краткие сведения об опциях программы и завершает ее работу. Пример ...'.* Ниже показан вывод динамических символов системной разделяемой библиотеки Hbss.so.2.0: I nm -D libss.so.2.0 00000000 A GCC.INTERNAL 00004934 A _DYNAHIC 0000481c A _GLOBAL_OFFSET_TABLE_ U _IO_putc U brkaddr 000049ec A bssstart U curbrk w deregister_frame_info U environ U errno location
w gmon_start w register frame_info U sigsetjmp 000049ec A _edata 00004adc A _end U _et_list 00003060 A _etext 00003060 ? fini 00001464 ? init 00004804 D _ss_pager_name 00004800 D sstable U atexit О calloc U close U closedir 0 com_err_va U dup2 U execlp D exit U fclose U fdopen U fflush U fgets U fork D fprintf U fputs U free U getenv 00001900 T initialize_ss_error_table D longjmp U malloc U memcpy U open D opendir D pipe U printf U read U realloc U sigaddset U sigdelset О sigemptyset U signal U sigprocmask U sprintf 00002540 T ss_abort_subsystem 00001e50 T ss_add_info_dir 000029d0 T ss_add_request_table 00001950 T ss_create_invocation 00001f80 T ss_delete_info_dir OOOOlacO T ss_delete_invocation 00002aa0 T ss_delete_request_table 00002900 T sserror 00002120 T ss_execute_command 000021b0 T se_execute_line 000029a0 T ss_get_prompt 00001Ь40 Т BS_help 00002b00 T ss_list_requests 000022b0 T ss_li8ten 00002790 T ss name
II. Команды 523 00002е30 00002db0 000025Ы) 00002940 00002580 00002fl0 00002970 000047f0 00002f50 00002f90 00002fd0 T T T T T T T D T T T U U U 0 0 U 0 П 0 0 88 page etdin ss pager create S8 parse 8S реггог 8S_quit 88 self identify S8 set prompt ss 8td requests 88 subsystem name ss subsystem version ss unimplemented stdin stdout strcat strchr etrcmp strcpy strncat system wait write * nnrpa - сервер NNTP ш узлов учебных заве^ний. Синтаксис nnrpd [-b address] [-D] [-g shadovgroup] [-o] [-p port][-z reason][-R] [-s title paddingJ[-t) nnrpd - это сервер NNTP для читателей новостей. Он принимает команды на свой стандартный ввод и отвечает через стандартный вывод. Обычно innd вызывается через дескрипторы, связанные с дистанционными подключениями клиента, хотя nnrpd может выполняться и как отдельный демон. В отличие от innd, демон nnrpd поддерживает все ориентированные на пользователя NNTP-команды чтения и отправки почты. Использует файл nnrp.access, чтобы контролировать право (авторизацию) доступа к БД Usenet. Когда параметр NNRPLOADLIMIT, определяющий загрузку и задаваемый в <config.data>, отличен от 0, будут отвергаться все подключения, если средняя загрузка превышает это значение (обычно 16). По завершении сервер nnrpd с помощью syslog предоставляет отчетную статистику. nnrpd может принимать мультимедийные почтовые отправления, соответствующие стандарту MIME, в виде сообщений SMTP. Опции -г reason Отвергает входящие подключения по указанной параметром reason причине. -R Заставляет nnrpd перейти в режим "только для чтения" и перекрывает любые опции Р в файле nnrp.access. Начальный заголовок содержит индикатор no posting (нет почты).
524 II Команды -s Получив команду, nnrpd пы 1ается заменить ее массив аргументов таким образом, чтобы ps смогла бы распечатать предстоящую команду -t Выполняет трассировку всех клиентских команд и первоначальных ответов (см. команду trace для ctlinnd). Этот флаг устанавливается innd -о Накапливает все статьи в спуле вместо того, чтобы посылать их innd. A затем регулярно с помощью сгоп вызывается rnews -U, которая "берет на себя" заботу об этих статьях. -D Заставляет nnrpd действовать как демон, а именно: запуститься как фоновый процесс, разветвляясь для каждого подключения. По умолчанию nnrpd прослушивает порт 119; в рассмотренном случае или innd привязывается к другому порту, или nnrpd вызывается с параметром -р. -р port Инструктирует nnrpd прослушивать указанный порт port. Обычно задается вместе с -D. -g shadowgroup Инструктирует nnrpd, чтобы попытаться добавить поименованную группу как дополнительную группу в систему теневых паролей. Для этого nnrpd должен выполняться только в однопользовательском режиме: данный вызов работает, если nnrpd стартует как root (суперпользователь). -b address Инструктирует nnrpd привязаться к указанному IP-адресу address, когда стартует в однопользовательском режиме, используя флаг -D. Это должен быть проверяемый адрес в точечной нотации, принадлежащий интерфейсу локального узла. nnrpd использует команды, определенные в RFC 977, хотя существуют некоторые отличия, среди которых особо следует отметить, что не реализована команда ihave. Вместо того чтобы пересылать на дистанционный узел содержимое всех статей, пересылаются только их идентификаторы. Такое сообщение называется ihave (я имею). Для пересылки статей пользователи могут применять команду post. Также не реализована команда slave. В системах, имеющих теневой файл паролей, nnrpd пытается добавить дополнительную группу shadow при работе в однопользовательском режиме. Во многих системах члены этой группы имеют лишь полномочия чтения на файл теневых паролей. Опция -g также применяется, чтобы поменять группу, членом которой пытается стать nnrpd. - посылает стать senet на дистанционный сайт. nntpsend Синтаксис nntpsend l-a][-c][-d][-D][-p][-rn-S][-n][-B size](-t timeout] [-T timelimit]l-V portnum] | sitename fqdn]... nntpsend - программный интерфейс, выбывающий innxmit для отправки статей Usenet на дистанционный NNTP-сай i.
II. Команды 525 Подпитываемые сайты указываются путем задания в командной строке двух аргументов - sitename и fqdn. Первый из аргументов задает имя сайта, как определено в файле newsfeeds. Второй аргумент - (fqdn - Fully Qualified Domain Name - полное правомочное имя домена) - может задаваться как имя или IP-адрес дистанционного сайта. Если рассмотренная пара аргументов не определена, nntpsend по умолчанию использует информацию, заданную в конфигурационном файле nntpsend.ctl. Но если упомянутая пара аргументов определена в командной строке, то любой из флагов командной строки передается либо innxmit, либо shrinkfile. Любой флаг, заданный в командной строке, перекрывает аналогичный флаг, определенный по умолчанию для конкретного сайта. Опции -d Заставляет nntpsend направлять вывод вместо журнала (<pathlog in inn.conf>/nntpsend.log) в стандартный выходной файл. -D Аналогичен флагу -d, но вдобавок передает флаг -d для innxmit, что, в свою очередь, направляет отладочную информацию от innxmit в стандартный файл ошибок. -s Этот файл будет передан shrinkfile для выполнения усечения заголовка пакетного файла. -а, -р, -г, -S, -t,-T, -с, -Р Передает все эти флаги дочерней программе innxmit. -п Если применяется этот флаг, nntpsend не использует shlock, хотя обычно делает это, а поэтому не блокирует пакетные файлы. Пример Ниже приведено содержимое управляющего файла: comsite:unity-comsite::-S -t8 О orbita: orbita. org:: hanaselana.bana.gov:2m-2m:-T3600 -tlOO По команде nntpsend получится следующий результат: Имя сайта comsite orbita hana Усечение нет нет Если статья более 2Мбайт, то оставит 2Мбайт Флаги nntpsend -a -S -t80 -a-t180 -a-T3600-t100
526 II Команды nOhlip - запускает указанную пользователем команду, 1\ которая будет выполняться даже и после выхода пользователя из системы. Синтаксис nohup command [arg]... nohup так запускает команду command с ее аргументами arg, что игнорируются сигналы HANGUP (см. приложение I), поэтому команда может продолжать выполняться в качестве фонового процесса даже после выхода из системы пользователя, ее запустившего. nohup использует приращение, равное 5, для планируемого процесса команды, что несколько снижает приоритет. Если стандартным выводом для указанной команды является терминал, то стандартный вывод и стандартный файл ошибок будут перенаправлены и добавлены к файлу nohup.out, если это невозможно, то будут добавлены к файлу SHOME/nohup.out. В противном случае команда не выполняется. При создании nohup.out или SHOME/nohup.out программа nohup не создает полномочий групп или других полномочий доступа, а также не меняет полномочий, если выходной файл уже существует. nohup автоматически не переводит задаваемую команду в фон, это должен сделать пользователь, завершив командную строку символом &. Опции —help Кратко информирует о команде nohup. —version Выводит информацию о версии nohup. nroff - вызывает команду groff, которая эмулирует стан- «артную команду Umix под названием nroff См. команду groff. nSIOOKUp - опрашивает серверы имен доменов в Internet. Синтаксис nslookup {-option...][host-to-find\-[server]] Программа nslookup - удобное средство для проверки правильности настройки сервера имен. Программа может быть запущена в двух режимах: интерактивном или режиме командной строки. Программа nslookup запускается в интерактивном режиме в следующих случаях: Q когда не указаны никакие аргументы и исполыуется заданный по > молчанию сервер имен
II Команды 527 Q когда вместо первого аргумента (искомый узел) стоит дефис, а в качестве второго аргумента указано имя или адрес сервера имен В режиме командной строки в качестве первого аргумента указано имя или IP-адрес искомого узла, в качестве второго необязательного аргумента - имя или адрес сервера имен. В интерактивном режиме nslookup обладает более широкими возможностями. Если программу запустить без аргументов, то она уведомит об имени сервера, который будет использовать, и перейдет в интерактивный режим. Существуют интерактивные команды, которые можно ввести в ответ на приглашение, нажав Ctrl+C. Интерактивные команды host [server] Позволяет просмотреть информацию для данного узла host, используя указанный сервер server или заданный по умолчанию. Если host представляет из себя IP-адрес и запрашивается тип записей о ресурсах А и PTR, то возвращается имя узла. Если в качестве host указано имя без завершающей точки, к имени добавляется взятое по умолчанию имя домена. Чтобы просмотреть узел не из текущего домена, к указываемому имени следует добавить точку. help, ? Печатает справку по командам. exit Завершает работу программы. server domain, lserver domain Меняет заданный по умолчанию сервер на domain; чтобы просмотреть информацию об указанном домеие domain, команда lserver использует начальный сервер, в то время как команда server применяет текущий заданный по умолчанию сервер. finger [name][>filename], finger [name][»filename] Подключается к серверу, указывающему на текущий узел пате. Текущий узел устанавливается по результатам предшествующего просмотра, поэтому параметр пате не обязателен. Возвращаемая информация направляется в файл filename согласно принятой манере: > записывается в начало файла » добавляется в конец файла Is [option]domain[>filename], Is [option]domain[»filename] Отображает информацию, доступную для домена domain, и направляет ее в файл filename. По умолчанию вывод содержит имена узлов и и\ адреса. Опции option могут принимать следующие значения: -t querytype отображает все записи указанного типа (см. дальше querytype) -а выводит псевдонимы узлов домена - синоним для -t CNAME -d отображает все записи для домена - синоним для -tANY -h отображает информацию о центральном процессоре и об операционной системе - синоним для -t H1NFO
528 II Команды -s оюбражает широкоизвестные службы узлов домена - синоним для -t VVKS view filename Сортирует и отображает с помощью more вывод предшествующей команды Is. set keyword[=value] Меняет тип записей. Проверяемые значения keyword показаны ниже: all печатает все текущие значения class=va/ue меняет запрашиваемый класс в одно из следующих значений: IN Internet (по умолчанию) CHAOS класс CHAOS HESIOD MTT Athena Hesiod ANY любой из перечисленных классов [no]debug включает режим отладки, по умолчанию принят nodebug (без отладки) domain=name меняет заданное по умолчанию имя домена на пате port=va/ue меняет заданный по умолчанию порт TCP/UDP сервера имен на значение value; по умолчанию - 53 querytype=va/i<e, lype=value меняет тип запрашиваемой информации на одно из следующих значений: A, CNAME, HINFO, MX, NS, PTR, SOA, ANY (любой из перечисленных); здесь указаны лишь основные типы, описания которых приведены в named [no]recurse предлагает серверу имен запрашивать другие серверы в случае отсутствия информации; по умолчанию принято значение recurse retry=number устанавливает допускаемое количество попыток подключений в значение number; по умолчанию - четыре попытки timeout=number устанавливает начальное значение тайм-аута при ожидании ответа в number секунд; во время каждой попытки дублируется время тайм-аута; по умолчанию - 5 секунд [no]ignoretc игнорирует ошибки, связанные с усечением пакетов. Все опции, перечисленные с командой set, могут быть указаны в файле .nslookuprc исходного каталога пользователя или в командной строке. Пример Чтобы поменять время тайм-аута на 15 секунд, следует набрать команду: $ nelookup -timeout=15 Default Server: un.ilmenau.de
II. Команды 529 AddreBS: 130.82.52.60 > ntSVSV - конфигурирует уровни функционирования системных служб. Синтаксис ntsysv I—back][—level levels] ntsysv - несложный интерфейс для установки уровней функционирования (или запуска, или исполнения, в литературе встречается разная терминология) системных служб. По умолчанию устанавливается текущий уровень. Опции —level levels Указывает уровень (уровни) функционирования. —back Заменяет стандартную кнопку Cancel (завершение, или отмена) в окне программы ntsysv на кнопку Back (возврат, или назад). Указывая одновременно несколько уровней функционирования, следует помнить, что они должны следовать за опцией —level без каких-либо пробелов. Программа ntsysv возвращает 0 в случае успешного завершения, 2 - в случае ошибки и 1 - если пользователь щелкнул на кнопке Cancel. Пример t ntsysv —level35 Для заданных уровней 3 и 5 производится определение служб, которые будут запускаться автоматически. Как можно видеть на рисунке, такие системные службы помечаются звездочкой. С помощью клавиш 44 Ф осуществляется выбор. Нажав TAB, попадаем на экранную кнопку ОК. Нажав Enter, завершаем программу, сохранив новые установки. Ш. rootOlocalhost localdomein: /root Найл Правка Settings Справка ntsasv 1.1.2 - (С) 1339 Red Hat Software Ч Сервисы |- Кякие сервисы должны зппускяться яетоиртически7 [Ц апэсгоп * М ге*А ш I I arpvatch a М atd ■ [*] crend ■ [*] SP» « [*] httfd a [*] Identd ■ Нюттге <F1> для гуосиогтря ннфорндрч о сервисе.
530 И Команды ObjCOpy копирует тр. • 1ирует объектные файлы. Синтаксис objcopy [-F bfdname\—target=bfdname\ [-1 bfdname\—input-taiqet=bfdname] -О bfdname\ —output-target=bfdname] -j sectionname\ —only-section=sectionname] -R sectionname\ —Temove-section=sectionname] [ -S | —strip-all J [_g|—strip-debug][—strip-unneeded] -K symbolname —kee$-symbol=symbolname] -N symbolname —strip-symbol-symbolname] -L symbolname —localize-symbol=syiabolnajne] -W symbolname —veaken-sywbol=symbolname] [-x|—discard-all] -x|—discard-locals] [-b byte\ —byte=byte] -i interleave] —interleave=interleave] [-p | —preserve-dates ] —debugging] [—gap-fill=val] [—pad-to=address] [—set-start= val\ —change-start=incr] [ —change-addresses=incr] —change-section-address=sectiofl{=,+,-}val] —change-section-lma=section{=f +,-}val] —change-section-vma=section{=,+,-}val][—change-warnings] —no-change-warnings ] [ —set-section-f lags=section=flags] —aud-section=sectionname=filename] [ —change-leading-char ] —remove-leading-char ] [ —weaken ] [ -v | —verbose ] [ -V | —version J —help] infile [outfile] Еще одна из утилит GNU binutils, копирующая содержимое одного объектного файла в другой. Использует для чтения и записи объектных файлов библиотеку GNU BFD. Она также может переписать объектный файл в формат, отличный от исходного. Для своих операций утилита objcopy создает временные файлы, которые сама потом удаляет. Оп ии -F bfdname, —target=bfdname Рассматривает формат исходного объектного файла согласно значению bfdname. -I bfdname, —mpul-largel=bfdname Записывает выходной файл в формате bfdname. -О bfdname, —output-target=6/c/nome Использует bfdname как формат объектного кода одновременно для входного и выходного файлов, т.е. просто переносит информацию от источника к месту назначения без трансляции. -j seclionname, —on\y-sectior\=sectionname Копирует из входного файла в выходной только секцию seclionname. Эту опцию можно использовать многократно. -R seclionname, --remove-section=sectioimame Удаляет из файла секцию seclionname. Эту опцию можно использовать многократно. -S —slrip-all Не копирует настраиваемую информацию и информацию о симнолач (идентификаторах) из исходного файла.
II. Команды 531 -g. —strip-debug He копирует отладочные символы (иденгификаторы) из исходною файла. --strip-unneeded Убирает все символы, которые не понадобятся в процессе насгройки. -К symbolname, —keep-symbo\=syrnbolname Копирует из исходного файла только символ (идентификатор) symbolname. Эту опцию можно использовать многократно. -N symbolname, —slrip-symbol=symbolname Не копирует из исходного файла символ (идентификатор) symbolname. Эту опцию можно использовать многократно. -L symbolname, —localize-symbol=i>w6o/name Помечает символ (идентификатор) symbolname как local — локальный для данного файла. Эту опцию можно использовать многократно. -W symbolname, —■weaker\-symhol=symbolname Помечает символ (идентификатор) symbolname как weak — слабый, т.е. его существование зависит от наличия других объектов. -х, —discard-all Удаляет все неглобальные идентификаторы. -X, —discard-locals Удаляет все локальные идентификаторы, сгенерированные компилятором. Их имена обычно начинаются с L или с точки. -b byte, —byte=byte Сохраняет только каждый байт, местоположение которого указывает byte (порядок следования). Эта опция не влияет на информацию headers (заголовков). Обычно используется с выходным форматом srec. Эта опция находит применение при создании файлов для программирования ROM (read only memory — постоянное запоминающее устройство, ичи ПЗУ). -i interleave, —interleave=i'n/eWeove Копирует только один байт из каждой группы байтов в количестве interleave. Какой собственно байт следует копировать, указывает опция -Ь, ее наличие вместе с рассматриваемой опцией обязательно. По умолчанию значение interleave равно 4. -р, —preserve-dates Устанавливает режим доступа и дату модификации выходного файла такими же, как для входного. —debugging Конвертирует отладочную информацию, если только это возможно. —gap-fill=va/ Заполняет промежутки между секциями содержимым га/. Эы операция проводится вместе с установкой LMA (load memory address ад- рее загрузки) секций. Увеличение размера секции производи гея со стороны ее наименьшего адреса, при этом нозникаст дополни гельное пространство.
532 II Команды ~paA-io=addivss Дополняет выходной файл до размера, указываемого address. Данная операция производится именно за счет увеличения размера последней секции. Дополнительное пространство заполняется val с помощью задания опции —gap-fill. По умолчанию производится заполнение дополнительного пространства нулями. —set-start=vo/ Устанавливает старювый адрес нового файла в значение val. He для всех форматов объектных файлов поддерживается установка стартового адреса. --change-start=/ncr, — adjust-start=/nci- Меняет стартовый адрес путем добавления смешения iner. —change-addresses=m<?/', — adj ust- vma=/ncr Меняет адреса всех секций так же, как и стартовый адрес путем добавления тег. Для некоторых форматов объектных файлов запрещается произвольное изменение адресов секций. —change-section-address=.secf;'oH {=,+,-) val, —adjust-section-vma=.sec/;'on {=,+,-} val Устанавливает или меняет на величину val адреса VMA (virtual memory address - виртуальный адрес) и LMA указанной секции section. Если задается знак равенства, адрес секции имен устанавливается в значение val: значение val также может добавляться или вычитаться из адреса секции. —change-section-lma=.sert/on {=,+,-} val Устанавливает или меняет LMA-адрес указанной секции section. —change-section-vma=.sec//'on {=,+,-} val Устанавливает или меняет VMA-адрес указанной секции section. —change-warnings, —adjust-warnings Если используется опция — change-section-ХЛХ а указанная секция не существует, выдает предупреждающее сообщение. —no-change-warnings, — no-adjust-warnings Не выдает предупреждающее сообщение, если используется опция --change-section-AXV, а указанная секция не существует. —set-section-flags=iec//'oi7^/7agi Устанавливает флаги flags для секции имен section. Аргумент flags - это строка имен флагов, разделенных запятыми. Распознаются следующие имена: alloc code contents data load тот noload share readonly debug Правда, некоторые форматы используют не все перечисленные флаги
II. Команды 533 ~aiid-seclioD=sectionname=filename В процессе копирования файла добавляем новую секцию sectionname. Содержимое новой секции извлекается из файла filename. При jtom размер секции равен размеру этого файла. 3ia опция рабогает только для rex форматов, для которых поддерживаются секции с произвольными именами. —change-leading-char Для некоторых форматов объектных файлов используются специальные символы, отмечающие начало идентификаторов. Чаще всего применяется символ подчеркивания, который компиляторы обычно добавляют перед идентификаторами. В процессе преобразования форматов эта опция предлагает сменить начальный символ. Если для форматов входного и выходного файлов применяется один и тот же начальный символ, данная опция не дает никакого результата. —remove-leading-char Удаляет начальный символ подчеркивания из состава всех глобальных символов (идентификаторов). Эта опция особенно полезна, если предстоит скомпоновать объекгы различных форматов с отличающимися договоренностями относительно имен идентификаторов. —weaken Помечает все глобальные идентификаторы файла как weak - слабый, т.к. их существование зависит от наличия других объектов. -v, —verbose Создает подробный вывод: распечатывает все измененные объектные файлы. В случае архивов с помощью objcopy -v распечатывает все члены. -V, —version Выводит информацию о версии программы и завершает ее работу. --help Выводит информацию об опциях программы и завершает ее работу. Аргумент infile - это входной файл для утилиты objcopy, аргумент outfile - выходной файл. Пример Распечатаем с помощью objdump листинг объектного файла libss.so.2.0: $ objdump —all-headers -T libss.so.2.0 libss.so.2.0: file format elf32-i386 libss.so.2.0 architecture: i386, flags 0x00000150: HASSYMS, DYNAMIC, DPAGED start address 0x00001840 Program Header: LOAD off 0x00000000 vaddr 0x00000000 paddr 0x00000000 align 2**12 filesz 0x00003688 memsz 0x00003688 flags r-x LOAD off 0x00003688 vaddr 0x00004688 paddr 0x00004688 align 2**12 filesz 0x00000364 memsz 0x00000454 flags rw- DYNAMIC off 0x00003934 vaddr 0x00004934 paddr 0x00004934 align 2**2 filesz 0x000000b8 memsz 0x000000b8 flags rw-
II Команды О.ечуе. обратигь внимание на start address 0x00001840 (сшртовый адрес) А теперь с помощью objeopy поменяем его, а новый объектный код помсешм в файл myobj: $ objeopy —change-start=0x000000FF libss.so-2.0 myobj $ objdump —all-headers -T myobj myobj: file format elf32-1386 myobj architecture: i3B6, flags 0x00000150: HASSYMS, DYNAMIC, DPAGED start address 0x0000193f Program Header: «**,-, LOAD off 0x00000000 vaddr 0x00000000 paddr 0x00000000 align 2**12 filesz 0x00003688 memsz 0x00003688 flags r-x LOAD off 0x00003688 vaddr 0x00004688 paddr 0x00004688 align 2**12 filesz 0x00000364 memsz 0x00000454 flags rw- DYNAMIC off 0x00003934 vaddr 0x00004934 paddr 0x00004934 align 2**2 Стартовый адрес увеличился на величину смещения и теперь составляет 0x0000193f. Напоминаю, что для всех утилит GNU binutils адреса задаются в шест- надцатеричном формате. objdump - выво ит информацию из объектных оайлов. Синтаксис objdump [-а|—archive-headers][-b bfdname\—target=i)f dflame] -С | —demangle ] [ —debugging ] [ -d | —disassemble ] [ -D | —disassemble-all ] —disassemble-zeroes ] [ -EB | -EL | —endian= {big | little} ] -f | —file-headers ] [ -h j—section-headers | —headers ] [ -i | —inf о ] - j section| —section =section] [-11 —line-numbers ] -m machine | —architecture=jna cAifle] [ -p | —private-headers ] —prefix-addresses] [-r|—reloc] [-R|—dynamic-reloc] -s | —full-contents ] [ -S j —source ] [ — [ no-] show-raw-insn] [—stabs ] -t j —syms ] [ -T | —dynamic-syms ] [ -x | —all-headers ] [—start-address=address] [—stop-address=address] [—adjust-vma=ofrset] [— help] [-V| —version] objfile... objdump выводит информацию по одному или более объектным файлам. Вывод информации управляется многочисленными опциями. Эта утилита особенно полезна программистам, производящим отладку программ, objdump входит в состав GNI binutils. Аргументы objfile... задают список объектных файлов. Опции a, --archive-headers Если какой-либо из объектных файлов упакован (см. аг и ranlib). выводит информацию о header (заголовке), а форм»г лиспип» подобен создаваемому командой Is -I. Помимо лоп информации с помощью ar t\
II. Команды 535 или objilump -а можно вывести формаг объек! hoi о файла каждш о члена архива. —adjust-vma=oj9Se/ Когда создается дамп объектного модуля, прежде всего добавляет смещение ко всем адресам секций. Это полезно, когда адресация секций не соответствует адресации таблицы идеи гификагоров (для a.out старого формата исполняемых файлов). -b bfdname, —targel=bfdname С помощью bfdname задается формат объектного кода объектных файлов. Эта опция вовсе не обязательна: objilump может автоматически распознавать многие форматы. Ниже приведен их перечень: elf32-i386 symbolsrec a.out-i386-linux tekhex elf32-littlc binary elf32-big ihex srec trad-core Уточнить форматы вашей системы можно по команде objdump -i. -С, —demangle Преобразует низкоуровневые имена идентификаторов в высокоуровневые, ранее определенные пользователем. Чтобы сделать имена функций C++ удобными для чтения, удаляет некоторые символы подчеркивания, специально предусмотренные системой. —debugging Эта опция подвергает синтаксическому контролю отладочную информацию, хранящуюся в файле, и распечатывает ее, используя С-подоб- ный синтаксис. -d, —disassemble Дизассемблирует секции, содержащие команды, в соответствии со структурой objfile. -D, —disassemble-all Подобна опции -d, но дизассемблирует абсолютно все секции, а не только содержащие собственно команды ассемблера. —prefix-addresses В процессе дизассемблирования печатает полный адрес на каждой строке, что соответствует более старому формату. —disassembl e-zeroes Обычно в процессе дизассемблирования пропускаег блоки нулей. Эта опция указывает программе дизассемблировать такие блоки, подобно другим данным. -ЕВ, -EL, -endian={big|little} Определяет разрядность объектных файлов (определяется типом процессора компьютера), это полезно, когда дизассемблнруегся объемный файл с неописанным форматом (например, S-jainicii).
53b II Команды -f, —file-headers Распечатывает и гогову ю информацию но всем headers (3ai оловкам) каждого файла в objfile. -h, —section-headers, —headers Распечатывает итоговую информацию, извлекаемую из headers (заголовков) объектного файла. —help Выводит краткое описание программы и завершает ее работу. -i, —info Распечатывает поддерживаемые форматы и архитектуры, доступные с помощью опций -Ь и -т. -j name, —section=nome Выводит информацию только для секции пате. -1, —line-numbers Выводит, используя отладочную информацию, имена файлов и номера строк, соответствующие объектному коду. Имеет смысл применять с опциями -d, -D или -г. -m machine, — architecture=ni«c7;me Указывает архитектуру, используемую при дизассемблировании объектного файла, что может быть полезно для S-записей. -р, —private-headers Распечатывает информацию, специфичную именно для данного формата объектного файла. -г, —reloc Распечатывает настраиваемые элементы файла. Если используется совместно с опцией -d или -D, настраиваемые элементы распечатываются в процессе дизассемблирования. -R, —dynamic-reloc Распечатывает динамически настраиваемые элементы файла, что характерно лишь для динамических объектов соответствующих библиотек. -s, —full-contents Полностью распечатывает содержание любой затребованной секции. -S, —source Распечатывает исходный код, смешанный с результатом дизассемблирования, если это возможно; имеет смысл совместно с опцией -d. —show-raw-insn В процессе дизассемблирования распечатывает команды в шестнадца- теричном формате так же, как и в символической форме. Эта опция всегда устанавливается по умолчанию. —no-show-raw-insn В процессе дизассемблирования не производит распечатку команд. Эта опция устанавливается но умолчанию, когда используется —prefix-addresses —stabs Выводит из файла в формате ELF содержимое секции .stab, .stub.indev .stab.cxcl, что, пожалуй, полезно лишь в системе Solaris2.0, где лче- мешы отладочной 1аблицы идентификаторов .stab перенесены в сек-
II. Команды 537 цню ELF. Для большинс1вадру| их формаюв элемешы отладочионтаблицы смешаны с идентификаторами компоновки и просмагривакггся с помощью опции —syms. ~slan-aMress=address Запускает вывод информации на указанном адресе address, что затрагивает опции -d, -r, -s. —slop-aildiess=address Останавливает вывод информации с указанного адреса address, что затрагивает опции -d, -г, -s. -t, —syms Распечатывает элементы таблицы символов (идентификаторов) файла, что напоминает вывод программы пш. -Т, —dynamic-syms Распечатывает элементы таблицы динамических символов, что существенно лишь для динамических объектов и напоминает вывод, производимый программой nm с опцией -D. --version Выводит информацию о версии программы и завершает ее работу. -х, —all-headers Выводит всю информацию заголовков, включая таблицу символов (идентификаторов) и настройки элементов. Использование этой опции эквивалентно одновременному применению всех перечисленных опций: -a, -f, -h, -r. -t. Пример # objdump —all-headers -T /lib/libss.so.2.0 /lib/libss.so.2.0: file format elf32-i386 /lib/libss.so.2.0 architecture: i386, flags 0x00000150: HASSYMS, DYNAMIC, DPAGED start address 0x00001840 Program Header: LOAD off 0x00000000 vaddr 0x00000000 paddr 0x00000000 align 2**12 filesz 0x00003688 memsz 0x00003688 flags r-x LOAD off 0x00003688 vaddr 0x00004688 paddr 0x00004688 align 2**12 filesz 0x00000364 memsz 0x00000454 flags rw- DYNAMIC off 0x00003934 vaddr 0x00004934 paddr 0x00004934 align 2**2 filesz 0x000000b8 memsz 0x000000b8 flags rw- Dynamic Section: NEEDED NEEDED SONAME INIT FIN! BASH STRTAB SYMTAB STRSZ SYHENT libc.so.6 libcom err.so.2 libss.so.2 0x1464 0x3060 0x94 0xb08 0x3e8 0x3ed 0x10
538 II Команды PLTGOT PLTRELSZ PLTREL JMPREL REL RELSZ RELENT VERDEF VERDEFNUM VERNEED VERNEEDNUM VERSYM 0x481c OxlcB Oxll 0x129c 0x1064 0x238 0x8 Oxffc 0x2 0x1034 Oxl 0xfl6 Version definitions: 1 0x01 0x0a62cf82 libss.so.2 2 0x00 0x073dl0bc GCC.INTERNAL Version References: required from libc.so.6: 0x0d696911 0x00 04 GLIBC2.1 0x0d696910 0x00 03 GLIBC 2.0 Sections: Idx Name Size VMA LHA File off 0 .hash 00000354 00000094 00000094 00000094 CONTENTS, ALLOC, LOAD, READONLY, DATA 1 .dynsym 00000720 ОООООЗев ОООООЗев ОООООЗев CONTENTS, ALLOC, LOAD, READONLY, DATA 2 .dynstr 0000040e ОООООЬОв ОООООЬОв ОООООЬОв CONTENTS, ALLOC, LOAD, READONLY, DATA 3 .gnu.version 000000e4 00000fl6 OOOOOfie 00000fl6 CONTENTS, ALLOC, LOAD, READONLY, DATA Algn 2**2 2**0 18 .got 19 .dynamic 20 .bss 21 .comment 22 .note SYMBOL TABLE: 00001840 00001840 00004688 00004814 0000468c 00001840 00004808 0000189c 00004a00 00002ffc 00003640 ы ы 1 Ы Ы Ы 1 Ы 1 Ы Ы 0 О О F О F О О 00000118 CONTENTS, ооооооьв CONTENTS, OOOOOOdc ALLOC 0000044a CONTENTS, 00000168 CONTENTS, 0000481c 0000481c 0000381c 2**2 ALLOC, LOAD, DATA 00004934 00004934 00003934 2**2 ALLOC, LOAD, DATA 00004a00 00000000 READONLY 00004adc READONLY .text 00000000 .text 00000000 .data 00000000 .dtors 00000000 .data 00000000 .text 00000000 .eh frame 00000000 .text 00000000 .bss 00000018 .text 00000000 .rodata 00000048 00004a00 ООООЗаОО 2**5 00000000 ООООЗаОО 2**0 00004adc 00003e4a 2**0 gcc2 compiled. gcc2 compiled. p.2 DTOR LIST completed.3 do_global dtors aux EHFRAME BEGIN fini_dummy object. 8 gcc2 compiled. copyright
II. Команды 539 Disassembly of section .hash: 00000094 <.hash>: 94: 95: 97: 9a: 9c: 9f: al: a3: аб: a8: Ы: ЬЗ: Ьб: Ь8: с2: с4: с5: C7: ei 00 00 00 67 00 00 00 00 40 00 00 00 19 00 4a 00 00 00000094 000003е8 оооооьое 00000П6 00000ffc 00001034 00001064 0000124с 0000129с 00001464 af5: af7: afa: afc: afe: bOO: Ь02: Ь04: 00 00 00 00 00 22 00 12 00 72 00 00 00 00 58 00 00 6a 00 00 00 00 2a 1 ы ы Ы 1 Ы 1 1 1 1 00 34 00 00 00 00 00 00 popa add 00 add 00 add add 00 add inc add 00 add sbb add dec add add d d d d d d d d d d add 01 add add add and add adc %al,(Seax) add %dh,0x0(%edx) %al,(Seax) addrl6 add %al,(%bx,%si) Sal,(*eax) %al,(%eax) add %Ы, 0x0 (Seax) Sal,(Seax) %eax %al,(Seax) add Sch,0x0(%edx) %al,(%eax) Seax,(%eax) %al,(%eax) %edx %al,(%eax) Sch,(%edx) .hash 00000000 .dynsym 00000000 .dynstr 00000000 .gnu.version00000000 •gnu.version d 000000C .gnu.version г 000000С .rel.data 00000000 .rel.got 00000000 .rel.plt 00000000 .init 00000000 Sal,(Seax) add %dh,(Secx,%eax,l) Sal,(Seax) Sal,(Seax) Sal,(Seax) (Seax),Sal Sal,(Seax) (Seax),Sal Disassembly of section .dynstr: 00000b08 <.dynstr>: Ь08: ЬОЬ: ЬОс: bOd: ЬОе: bOt: Ы0: Ы1: Ы4: 00 59 4e 41 4d 49 43 00 4c 5f 5f 44 pop dec inc dec dec inc 47 dec add %ecx Sesi Secx Sebp %ecx Sebx add Sesp Sbl,0x44(Sedi) %bl,0x47(Sedi)
540 II Команды с94: Sf pop %edi C95: 70 65 jo cfc <GCC.IllTERNAL+0xcfc> c97: 72 72 jb dOb <GCC.INTERNAL+0xd0b> c99: 6f outsl %ds:(%esi),(%dx) c9a: 72 00 jb c9c <GCC.INTERNAL+0xc9c> c9c: 66 6f outsw %ds:(%esi),(%dx) C9e: 72 6b jb dOb <GCC.INTERNAL+0xd0b> caO: 00 5f 5f add %bl,0x5f(%edi) ca3: 65 gs Ca4: 72 72 jb dl8 <GCC.INTERNAL+0xdl8> саб: бе outsb %ds:(Sesi),(%dx) ca7: 6f outsl %ds:(%esi),(%dx) 5f pop %edi caB: ca9: 6c insb (%dx),%es:(%edi) t Здесь приведены лишь отдельные фрагменты этого большого листинга. Od - выводит дамп файлов в восьмеричном или других К. форматах. Синтаксис od [option]...[file]— od —traditional [file] [ [ + ]offset l[+]label]] Выводит каждый байт файла file, в том числе неизображаемые (неграфические) символы, в одном из нескольких возможных представлений: восьмеричном, шестнад- цатеричном или символьном формате. Причем, offset означает -j offset, a label - псевдоадрес первого распечатанного байта. Записывает указанное представление файла (по умолчанию восьмеричный формат) на стандартный вывод. Если в командной строке не указан никакой файл или вместо имени файла стоит дефис, считывает стандартный ввод. Опции -А, —address-radix=/orfu: Задает систему счисления для смещений адресов внутри файлов. Параметр radix может принимать одно из следующих значений: d десятичная о восьмеричная х шестнадцатеричная -j, — skip-bytes=6)>/ei' Пропускает указанное количество начальных бант файла. -N, — read-bytes=Af Считывает в каждом файле лишь указанное число байг. -s, —slrings[=bytes] Выводит строки длиной не менее bytes видимых (графических) еммво-
II. Команды 541 -t, — forma t=type Вывод в заданном формаге (форма!ах), где size - обычно рашер (байты): а поименованный символ с символ ASCII или управляющая последова1ельность (через обратный слэш) d [size] десятичное со знаком f [size] число с плавающей запятой о [size] восьмеричное u [size] десятичное без знака х [size] шестнадцатеричное -w, —width [=bytes] Определяет размер выходной строки (бай гы), но умолчанию -32 —traditional Поддерживает формат аргументов, возникший до принятия стандарта POS1X (показан старый, а рядом новый формат): -a -t а поименованные символы -b -t oC восьмеричные байты -с -t с символы ASCII или управляющие последовательности (с обратным слэшем) -d -t u2 десятичные короткие числа без знака -f -t fF числа с плавающей запятой -h -I x2 шестнадцатеричные короткие числа -i -t d2 десятичные короткие -1 -t d4 десятичные длинные -о -t o2 восьмеричные короткие -х -t x2 шестнадцатеричные короткие Пример Ниже представлено содержимое файла vvv в разных форматах. ■ ■ root@localhost.locBldomair:/root П х ГОайя Правка Settings Справка [rootElocalhost /root]* cat wu Linux - main OS [rootElocalhost /root]* od -c uvu 0000000 Linux - main 0 S \n 0000020 [rootGlocalhost /root]* od -b wv 0000000 114 151 156 165 170 040 055 040 155 141 151 156 040 117 123 012 0000020 [rootElocalhost /root]* *
II Команды OVei"Chan обновляет базу обзоров новостей. Синтаксис overchan I-D dir][-с][file] Считывает информацию из указанного файла file или стандартного ввода, если имена файлов не заданы. Единственный дефис означает стандартный ввод. Использует информацию для обновления базы обзоров новостей. overchan предназначена для использования InterNetNcws. База данных для каждой группы новостей хранится в файле <overviewname in inn.conf> в каталоге группы новостей в дереве базы обзоров. overchan блокирует файл БД (путем блокирования вспомогательного файла) перед добавлением новой информации. Чтобы удалить данные по истечении срока действия статей, применяется expireover. По умолчанию overchan обрабатывает входной файл как поток обзоров INN, записанных в виде элемента WO в файле newsfeeds. Эта информация состоит из строки текста, разделенного на две части символом TAB (табуляции). Первая часть - это список всех относительных маршрутов, где была записана статья, с символом пробела между элементами. Вторая часть - информация, записанная в обзорный файл, без начального номера статьи. В случае истечения срока хранения данные в файлах обзоров могут быть "почишены" с помощью expireover. Но обычно это делается с помощью news.daily с флагом expireover. Опции -с Обрабатывает вывод программы mkov из С News. Этот формат описывается в дистрибутивном комплекте nov. -D dir Флаг -D указывает каталог dir, в котором хранятся базы данных. По умолчанию принят каталог <pathovervie\v in inn.conf>. paSSWQ устанавливает пароль пользователя для входа К в систем . Синтаксис passwd [option...] pasBwd [option...] name Вторая форма команды используется только сунерпользователем. который может установить пароль кому угодно, задав имя пользователя (пате). Опции -d, -delete Отменяет пароль для данного пользователя. Опция используется лишь суперпользова гелем. -f, -force Форсирует изменение пароля, только суперпольдонагель может чо выполнить.
II. Команды 543 -1, —lock Блокирует поименованный счет. Опция используется лишь суперполь- зова гелем. -и, —unlock Разблокирует поименованный счет. Опция используется лишь супер- пользователем. -S, —status Информирует о состоянии пароля указанного счета. Используется только суперпользователем. -к Меняет только пароли с истекшим сроком действия. Пример Суперпользователь изменил пароль пользователя andry. Новый пароль пришлось вводить дважды (он не отражается на экране). # passwd andry Changing passwd for user andry New UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully » P3STG - выполняет слияние «айлов. К. Синтаксис paste [option]...[file]... Последовательно объединяет соответствующие строки каждого файла, вставляя между строками символ табуляции, а затем направляет их на стандартный вывод. Если в командной строке никакой файл не указан или вместо имени файла стоит дефис, считывает стандартный ввод. Опции -d, —delimiters=/K< Вместо символа табуляции в качестве разделителей использует символы из списка list. -s, —serial "Склеивает" все строки каждого файла. —help Выводит список опций программы и завершает ее. —version Выводит информацию о версии программы и завершает ее. Пример $ cat priml28 banan apple plum orange $ paste -s priml28 banan apple plum orange $ Вот что ирошойдет со строками одного из файлов после обрабт кп комли чин paste.
II Команды DatCh накладывает "заплату", воплощающую отличия, на оригинальный файл, тем самым корректируя его Синтаксис patch [option][originalfile [patchfile]} patch -рлшп <patchfile Программа patch берет файл patchfile, содержащий отличия в виде задания на корректировку, созданного программой diff, и прикладывает их к одному или более оригинальным файлам originalfile. создавая очередные версии. Обычно эти "заплатанные" версии замещают оригинальные файлы. Даже имена файлов, когорые необходимо отремонтировать, обычно извлекаются из файлов-заплаток. В процессе старта patch пытается установить тип листинга программы diff и в зависимости от результата либо самостоятельно (—context или -normal) воплощает эти различия, либо перепоручает редактору ed (-ed). Основные опции -b, —backup Накладывая "заплату", переименовывает или копирует оригинальный файл вместо того, чтобы удалить его. Если в процессе копирования программа patch обнаружит, что исходного файла не существует, будет создан пустой файл в виде копии несуществующего оригинала. —backup-if-mismatch Копирует файл в любом случае, даже если этого не требовалось. Опция принята по умолчанию, если не установлена переменная окружения POSIXLY_CORRECT. —no-backup-if-mismatch Не выполняет копирования оригинального файла. -В pref, —ртейх=рге/ Создает префикс pre/к имени копии оригинального файла. —binary Выполняет чтение и запись всех файлов в бинарном (двоичном) режиме за исключением стандартного вывода и /dev/tty (терминала). -с, —context Интерпретирует содержимое patchfile как обычное контекстное задание для diff. -d dir, —directory=^(> В первую очередь меняет текущий каталог на dir. -D define, ~ifdef=define Для отметки изменений использует конструкцию #ifdef...#endif с параметром define в качестве отличительного символа. —dry-run Печатает результаты, которые моим бы возникнуть при наложении "заплат", не меняя сами файлы. -е, —cd HinepiipeinpyeT/wifc/i/J/e как сценарий редактора cd.
II. Команды 545 -Е, -remove-emply-files Удаляет все пустые выходные файлы, когорые возникают после наложения "заплат". -f, —force Предполагает, что пользователь знает, что он делает, поэтому не задает никаких вопросов. -g num. —get=num Управляет действиями patch, если файл находится под управлением RCS или SCCS (тоже система управления версиями). Если значение пит положительное, то patch получает или проверяет файл из системы управления версиями, если значение пит равно нулю, игнорирует системы управления версиями. В случае отрицательного пит запрашивает пользователя о местонахождении файла. —help Распечатывает краткие сведения об опциях программы и завершает ее. -i patchfile, —inp\\t=patchfile Считывает информацию по корректировке vapatchfile. Если вместо имени файла стоит дефис, считывает стандартный ввод, что и принято по умолчанию. -I, —ignore-whitespace "Не очень" придирчиво сопоставляет неизображаемые символы файла patchfile и оригинального файла, любая последовательность таких символов в конце строки даже игнорируется. -п, —normal Интерпретирует содержимое patchfile как обычное задание diff. -N, —forward Игнорирует "заплаты", которые возвращают назад к предшествующим версиям или уже прикладывались ранее. -о outfile, —output=Oi///?/e Посылает результат в outfile, не трогая оригинальный файл. -рпит, stnp=mim Отбрасывает пит впереди идущих слэшей в префиксе имени каждого файла, найденного в файле patchfile. -г rejectfile, —ieject-fi\e=rejectfile Направляет отвергнутые различия в rejectfile вместо создания по умолчанию файла с расширением .rej. -R, —reverse Реконструирует обратную операцию, что не работает со сценариями редактора ed, в которых содержится чересчур мало информации для обратных преобразований. -s, —silent, —quiet Работает, не выдавая никаких сообщений, даже если встречаются ошибки. -t, —batch Работает не задавая вопросов, подобно опции -Г, хотя некоторые веши делает по-другому: пропускает "заплаты", чьи заголовки не содержа г имен файлов или в сфоке вида Prercq: хранят неправильную версию
II Команды файла, а также выполняет обратную операцию, если это указано в заплате. -Т, -set-time Устанавливает время модификации и доступа из временных меток, хранящихся в контексте заголовков diff. При этом используегся локальное время, что может затруднить применение такого palchfile в других часовых поясах. -u, —unified ИнтерпретируетраГсА/г/е как унифицированное контекстное задание difT. -v, —version Распечатывает заголовок и уровень версии программы patch, а затем завершает ее. —verbose Сообщает дополнительную информацию о выполняемых действиях. -Y pref, — basename-prefix=pref При создании копий добавляет указанный префикс к базовому имени файла. -z suffix, ~s\iffix=sttffix При копировании файлов использует данный суффикс для создания имен файлов. -Z, —set-utc Действует подобно опции -Т, но предполагает, что используется UTC, часто также задаваемое аббревиатурой GMT. На Web-сайтах Internet хранится множество patches (заплат), с помощью которых можно легко обновить необходимый компонент программного обеспечения Linux, вплоть до ядра системы. pathchk п ове»яет ко» ектность казанных имен «айлов. Синтаксис pathchk [option]...[паше]... Выводит конструкцию имен файлов и проверяет, доступны ли каталоги указанных маршрутов, пригодны ли длины имен для конкретной системы, переносимы ли файлы. Опции -Р, -portability Проверяет пригодность имен файлов для всех POSIX-систем, а не только для текущей. —help Выводит список опций программы и завершает ее. —version Выводит информацию о версии программы и завершает ее. Для каждого из указанных в командной строке имен name команда pathchk выводит специальное сообщение, если справедливо одно из следующих условий: D один из каталогов, содержащийся в name, не имеет полномочий на исполнение D длина имени файла оказалась больше, чем допускаемая максимальная длина имени для этой файловой системы
II. Команды 547 Q длина одного in компонентов имени, соошетствующего существующему имени каталога, больше, чем максимальная длина компонента имени в л ой файловой системе Программа pathchk завершается с кодом 0, если все указанные имена файлов про шли все тесты, в противном случае — завершаегся с кодом 1. pidof определяет идентификатор процесса работающей программы. Синтаксис pidof [-s](-x][-o omitpid][-o omitpid...] program [program...] Программа pidof устанавливает P1D (идентификатор процесса) запущенной программы program. Опции -s Возвращает только один PID. -х Пригодна для сценариев. Сообщает' P1D оболочек, в которых запущены указанные сценарии. -о omitpid Предлагает pidof исключить процессы с указанными идентификаторами. Специальный идентификатор процесса %PPID именует pidof. pidof- это не что иное, как символическая ссылка на программу killallS. npi ер # pidof find 1317 1316 t Суперпользователь установил, что в системе запущены две команды find (возможно, другими пользователями) с идентификаторами процессов 1317 и 1316. PinG - программа поддержки электронной почты и новостей Internet, Синтаксис pine [option][address, address] pinef [option][address, address] Программа pine - это экранно-ориентированный инструмент поддержки сообщений. По умолчанию в своей конфигурации pine предлагает пользователю-новичку oi pa- ничеиный набор функций, который может быть расширен ну ivm добавления целою ряда необязательных возможностей, что сделает программу pine полезной и опытном) нолыоватслю.
548 II Команды pinef j ю варниц т pine, который вмес го односимвольных команд применяет функци опальные клавиши. Среди основных особенностей pine необходимо отметить следующие: Q Отображает, сохраняег, экспортирует, уничтожает, печатает и перепоручает сообщения, а также отвечает на них. Q Предоставляет возможности по составлению сообщений в несложном редакторе Pico с автомагическим переходом на новую строку и с проверкой ошибок (корректор). Q Предоставляет полноэкранный выбор и управление папками сообщений. О Хранит адресную книгу, содержимое которой может пополняться адресами входящей почты. Q Может определять персональные списки рассылки. Q Проверяет новые поступления электронной почты каждые 2.5 минуты. О Оказывает помощь в режиме on-line. О Поддерживает MIME-типы, сохраняет MIME-объекты в файлах и в ряде случаев может вызвать соответствующую программу, пригодную для просмотра объектов. □ И хотя составитель сообщений программы pine не обладает способностью создавать мультимедийный объект, но файл любого типа, в том числе и мультимедийный, может быть присоединен к текстовому сообщению и отправлен с помощью правил MIME-кодирования. Это позволяет любой группе пользователей, обладающих MIME-совместимым программным обеспечением электронной почты (pine, pc-pine, другие подобные программы), обмениваться форматированными документами, электронными таблицами, изображениями и т.д. через электронную почту Internet. D Использует для доступа к локальным и дистанционным почтовым папкам так называемый механизм c-client messaging API-библиотеки, предоставляющей низкоуровневый набор функций поддержки сообщений. В эту библиотеку включены драйверы для почтовых файлов различных форматов и утилиты доступа к дистанционной почте и серверам новостей, использующие протоколы IMAP и NNTP. Исходящая почта обычно вручную направляется sendmail. но может быть отправлена напрямую через SMTP. Опции address Посылает почту на указанный адрес address, что непосредственно выводит на составитель сообщений. -а Устанавливает специальный анонимный режим доступа к L'WIN (University of Washington Information Navigator - навигатор информации Вашингтонского университета). -attach file Отправляет поч ту с подключенным к ней файлом file. -attachand delete file Отправляет почту с подключенным к ней фай'юм flic, а .мнем уылягг этот файл.
II Команды 549 -attachlist file-list Отравляет почту с подключенным к ней списком файлов. -с context-number Параметр context-number определяет номер набора почтовых папок (см опцию -f). По умолчанию опция -f соответствует первому заданному набору. -d debug-level Определяет уровень <0-9> выводимой диагностической информации по текущему состоянию файла .pine-debug. Если параметр debug-level установлен в 0, это отключает отладку и использование файла .pine- debug. -d key [= val\ Соответствующим образом оформляет выводимую диагностику, когда flush инициирует запись отладочного файла без буферирования. При этом возможно появление следующих ключевых слов key со значениями val или без таковых: timestamp добавляет к каждому сообщению временную метку imap=n определяет уровень телеметрического отсчета по протоколу IMAP; n может меняться от 0 до 4 numfiles=n задает количество поддерживаемых отладочных файлов; п может меняться от 0 до 31 verbose=n указывает обратное предельное значение для вывода сообщений; п может меняться от 0 до 9 -f folder Указывает папку для открытия в первом заданном наборе вместо INBOX - почтового ящика входящих сообщений. Чтобы указать вместо первого произвольный набор почтовых папок, применяется -с context-number. -F file Открывает поименованный текстовый файл и позволяет просмотреть его содержимое с помощью браузера программы pine. -h Выводит список опций командной строки. -i Стартует в экране FOLDER INDEX. -I keystrokes Задает разделенный запятыми список нажатий клавиш, определяющий начальные действия pine на старте. -к Использует функциональные клавиши в качестве команд - это то же самое, что запустить команду pinef. -n number Начинает обработку сообщения с текущим номером number. -nr Устанавливает специальный режим для UWIN*. -о Открывает первую папку только для чтения. -р config-file Использует в качестве конфигурационного файла указанный config-file вместо принятого по умолчанию персонального файла pine.conf. -Р config-file Использует в качестве конфигурационного файла ука laimi.iii config-file вместо принятого но умолчанию системного файла pine.coiif.
550 II Команды -г Использует ограниченный демонсграционный режим. Программа pine только отправляет сама себе поч гу, ограничивая такие функции, как сохранение и экспорт. -url nrl Открывает заданный локатор url. He может применяйся с опциями -f, -F, -attach. -z Допускает использование AZ и сигнала SIGTSTP (см. приложение 1), что переводит pine в состояние ожидания. -bail Завершает работу, если не существует файл pinerc. -conf Создает образец копии последнего содержимого конфигурационного файла pine.conf и направляет его на стандартный вывод. -createlu addrbook sort-order Создает внешний индексный файл для указанной адресной книги addrbook, при этом сортирует ее содержимое в заданном параметром sort-order порядке. Опция полезна при создании глобальных или совместно используемых адресных книг. Ниже приведены допустимые значения sort-order. nickname уменьшительные имена fullname полные имена nickname-with-lists-last уменьшительные имена последнего списка fullname-with-lists-last полные имена последнего списка dont-sort не выполнять сортировку -pinerc file Выводит "свежее" содержимое конфигурационного файла pinerc в заданный файл. -sort order Указывает порядок сортировки содержимого экрана FOLDER INDEX в соответствии со значением параметра order. Ниже приведены допустимые значения параметра order. arrival в порядке поступления (по умолчанию) subject по теме сообщений from от кого прибыло date по дате size по размеру orderedsubj по указателям тем reverse любая сортировка может быть выполнена в обратом порядке путем добавления выражения /reverse к любому из ранее перечисленных значений, например: size/reverse -option=va!ue Присваивает значение value указанной конфигурационной опции option. Существует несколько уровней конфигурирования pine, причем значения заданного уровня перекрывают соответствующие значения более низких уровней, что отражено в порядке возрастания в приведенном ниже списке:
II. Команды 551 D встроенные значения но умолчанию 3 информация системного файла pine.conf 3 информация персонального файла .pincrc. koi орая может быть задана во вс троенном меню Setup/Config D опции командной ci роки D информация системного файла pine.conf.fixcd Unix-версия программы pine использует следующие переменные окружения: TERM DISPLAY определяет, может ли pine отображать подключенные изображения SHELL по умолчанию /bin/sli MAILCAPS разделенный символами двоеточия список маршрутов к файлам mailcap Про! рамма pine использует большое количество файлов: /var/spool/mail/;oxY папка, принятая по умолчанию для входящей почты -/mail каталог, принятый по умолчанию для хранения почтовых папок ~/.addressbook файл, принятый по умолчанию в качестве адресной книги -/.addressbook.lu принятый по умолчанию индексный файл для адресной книги ~/.pine-debug[l-4] диагностический журнал, используемый при отладке -/.pinere персональный конфигурационный файл программы pine ~/.newsrc файл, описывающий статус новостей —/.signature принятый по умолчанию текстовый файл электронной подписи -/.mailcap персональный файл, отражающий возможности программного обеспечения электронной почты -/.mime.types персональный файл расширений для отображения MIME- типов /etc/mailcap системный файл, отражающий возможности программного обеспечения электронной почты /etc/mime.types системный конфигурационный файл, содержащий М1МЕ- типы /etc/pine.conf.fixed неперекрываемый конфш урационный файл ("истина в последней инстанции") /tmp/.\var\spool\mailY)c;ox Lock-файлы по одному на каждую почтовую панк) ~/.pine-interrupted-mail прерванное сообщение ~/mail/postponed-msgs для хранения отложенных сообщений ~/mail/sent-mail архив исходящих сообщении ~/mail/saved-messages для накопления (по умолчанию) сохраняемых сообщений
It Команды ping отправляет пакеты ICMP на сетев-ie узлы. К Синтаксис ping [-dfnqrvR][-c count][-i rait][-l preload][-p pattern][-B packetsize] 1-1 [ping_only\] [-1 devicename] host Команда ping посылает пакеты ICMP ECHOREQUEST на сетевые узлы host, определяя работоспособное гь сети и ее пропускную способность. В ответ на дейтаграмму ECHO_REQUEST приходит ответ ICMP ECHORESPONSE от узла или шлюза. Дейтаграммы ECHOREQUEST имеют IP и ICMP заголовки, за которыми следуют структура временного типа и произвольное количество байт, заполняющих остаток сетевого пакета. Опции -с count -d -f -i wait -1 preload -n -p pattern -q -R Останавливается после отправки и получения указанного числа пакетов ECHORESPONSE. Устанавливает на используемый сокет опцию отладки. Отправляет пакеты потоком так же быстро, как они возвращаются, т.е. сотни раз в секунду или более. Эта опция доступна только суперпользователю и создает значительную загрузку сети. Ждет между отправками пакетов указанное количество секунд, по умолчанию - 1 секунду. Эта опция несовместима с опцией -f. Отправляет указанное количество пакетов с максимально возможной скоростью, а затем переходит в обычный режим отправки. Эта опция доступна только суперпользователю. Выполняет лишь числовой вывод, даже не пытаясь переводить адреса узлов в их имена. Указывает образец для заполнения пакетов, можно указать до 16 байт- заполни гелей. Опция -р ff полностью заполняет отправляемый пакет. Запрещает вывод диагностики: печатаются лишь строки, информирующие о старте и завершении. Регистрирует маршруты, пройденные пакетами; размера IP-загочовка хватает лишь для девяти маршрутов. Многие узлы игнорируют эту оп- "г Игнорирует обычные таблицы маршрутизации. Посылает пакеты на \ зе.ч непосредственно подключенной сети. Если на непосредственно подключенной сети узел не обнаружен, возвращает ошибку. -s packetsize Указывает количество байт посылаемых данных, по умолчанию 56. когорые транслируются в 64 бай г К'МР (8 iwiir составляет ршмер заголовка).
II. Команды 553 _v Выполняет подробный вывод: отображает получаемые ICMP- пакеты, отличающиеся от ECHO RESPONSE. -Т \ping_only] Посылает временную метку протокола IP, где параметр pingonly принимает такие значения: -Т tsonly только временные метки -Т Isandaddr временные метки и адреса -Т tsprespec hostl [hosl2 [hosti [host<\]]] временная метка на указанные узлы -I device name Устанавливает интерфейс вывода. Если ping вообще не получает возвращаемые пакеты, она завершается с кодом 1; в случае ошибки завершается с кодом 2; в противном случае - с кодом 0. Пример $ ping 192.168.20.3 PING 192.168.20.3 (192.168.20.3): 56(84) bytes of data. 64 bytes from 192.168.20.3: icmp_seq=0 ttl=255 time=0.8 ms 64 bytes from 192.168.20.3: icmp_seq=l ttl=255 time=0.8 ms 64 bytes from 192.168.20.3: icmp_seq=2 ttl=255 time=0.9 ms Ctrl+C 192.168.20.3 ping statistics 3 packets transmitted, 3 packets received, 0% packet loss round-trip min/avg/max=0.8/0.8/0.9 ms 5 При нажатии Ctrl+C прекращает тестирование узла. Pnews - публикует статьи новостей. Синтаксис Pnews newsgroup title Pnews -h headerfile [oldarticle] Pnews Pnews - дружественный интерфейс, позволяющий отправить новые статьи в гр> п- пу newsgroup новостей Usenet с заголовком title. Pnews - интерактивная программа, позволяющая вам ввести свою статью, а затем отправить ее в Usenet с помощью npoi раммы inews. Если в вашем исходном каталоге существует файл .signature (с электронной подписью), программа inews добавит его к сообщению после проведения редактирования. А если вы предпочитаете видеть свою подпись уже в процессе редактирования сообщения, переименуйте файл .signature в .newssig, и он будет добавлен еще до начала редактирования. Подпись из файла .ncws_sig включи г npoi рлмма I'new s. С) им- ко следует учесть, что если в вашем исходном каталоге существуют оба ли файла, статья может оказаться подписанной дважды.
554 II Команды Опции -h headeifile Второй формаг команды Pnews с этой опцией применяется тала, копи производится вызов из npoipaMMbi trn. В эюм случае может возникнуть необходимость, используя параметр headeifile, поменять файл с заголовком, который trn передает Pnews. В текущую статью может быть включена предшествующая статья oldarticle на ту же тему. Переменные окружения AUTHORCOPY Содержит имя файла, к которому будет добавлена законченная статья. По умолчанию статья не сохраняется. DOTDIR Определяет местоположение файлов, имена которых начинаются с точки (скрытые файлы), в том случае, если они расположены за пределами вашего исходного каталога. Предназначена для учетных счетов, совместно используемых более чем одной особой. По умолчанию - SHOME. EDITOR Редактор для подготовки статей, если переменная VISUAL не определена. По умолчанию используется редактор, инсталлированный администратором службы новостей. Обычно это vi. НОМЕ Ваш исходный каталог; по умолчанию - SLOGDIR. LOGNAME Ваше регистрационное имя, если переменная USER не определена. По умолчанию - это значение, полученное с помошью команды whoami. NAME NEWSORG Ваше полное имя. По умолчанию берется имя из файла /etc/passnd или -/.fullname. Или название вашей организации, или имя файла, содержащего это название. Если установлены обе переменные - NEWSORG и ORGANIZATION, то первая перекрывает вторую. ORGANIZATION Или название вашей организации, или имя файла, содержащего это название. По умолчанию - любое выбранное вашим администратором службы новостей. REPLYTO Содержимое строки заголовка Reply-To: для включения в сообщение. По умолчанию строка заголовка не включается. USER VISUAL Ваше регистрационное имя. По умолчанию - SLOGNAME. Редактор для подготовки статей. По умолчанию SFD1TOR. Пример Ниже приведен фрашент протокола работы программы Pnews.
II. Команды 555 Я: mishaQlocafhostlocaldomain: /home/misha IV [misha61ocalhost mishal* Pnews Г* I see you've never used this version of Pneus before, I will give ьои extra help this first tine through, but then you must remember what you learned. If you don't understand any question, type h and a CR (carriage return) for help. If you've never posted an article to the net before, it is HIGHLY recommended that you read the netiquette document found in news.announce.newusers so that you'll know to avoid the commonest blunders. To do that, interrupt Pneus, get to the top-level prompt of Ct]rn, and use the command "g netos.announce.newusers" to go to that group. Neusgroup<s): os.linux Your local distribution prefixes are: Everywhere: <null> (not "world") Distribution (>: corop Title/Subject: Linux for you cat: /etc/organization: No such file or directory This program may post news to many machines. Are you absolutely sure that you want to do this? [ny] у Prepared file to include [none]; vwl Check spelling. Send, Abort, Edit, or List? | portmap - программатсервер, конвертирующая номера про г«амм RPC в номера портов протокола DARPA! Синтаксис portmap [-d][-v] portmap должна быть запушена для выполнения вызовов RPC. Когда запускается какой-нибудь сервер RPC (Remote Protocol Call - дистанционный вызов процедур), он должен сообщить portmap, какой номер сетевого порта следует прослушивать и какие RPC-программы придется обслуживать. И, когда клиент желает сделатт RPC-вызов к указанной программе, он прежде всего обращается к portmap на машине-сервере, чтобы установить номер порта, через который будут посылаться RPC-паксты. Программа portmap должна быть запущена до вызова любых других серверов RPC. Опции "d Устанавливает агладочный режим, запрещает portmap работать в качестве демона. Все ошибки и отладочная информация направляются в стандартный файл ошибок. "v Подробно информирует о происходящем.
556 II Ко«ацд Чтобы разрешить подключение клиентам конкретного домена, следует добавить i файл /etc/hosts.allovv специальную сфоку. Пример Вот так будет выглядеть типичная строка /etc/hosts.allovv: portmap: .sport.com Разрешает подключение клиентов домена .sport.com. poweroff отключает п тание. Синтаксис poweroff [-n](-w][-d][-f][-i] Делает соответствующую запись в /var/log/wtmp и предлагает ядру отключить питание. Опции -п Не выполняет перед отключением sync. -w He выполняет отключения питания, а лишь делает запись об этом в /var/log/wtmp. -d Ничего не записывает в файл /var/log/wtmp. -f He вызывает shutdown. -i Перед отключением завершает работу всех сетевых интерфейсов. Данная команда является привилегией суперпользователя. РГ - подготавливает текстовые файлы для печати, К форматируя их. нтаксис pr [option]...[file] Разбивает указанные файлы file, предназначенные для печати, на страницы или но столбцам. Опции +first_page[:last_page\, —pages=///vsr page[:last_page] Начинает печатать со страницы first page и завершает процесс после распечатки last page. -column, --columns=co/H»m Выполняет вывод п указанное число сюлбцов column, если -только не задана опция -а. С гарасгся на каждой с границе сбалансировать количество арок в столбцах.
II. Команды 557 -a, —across Вместо обычной печати сверху вниз печатает столбцы поперек, используется совместно с -column. -с, —show-control-chars Для вывода управляющих символов использует символ Л (например, As) и восьмеричный формат с обратным слэшем (например, ШО). -d, —double-space Устанавливает между строками двойной интервал. -е [char[width]], —expand-tabs[=cAor[ivW//i]] Преобразовывает входные символы char (по умолчанию TAB - символ табуляции) в указанное параметром width число пробелов (8). -F, -f, —form-feed Использует символ form-feed (перевод, или протяжка, или прогон страницы) для разделения страниц вместо символа newline (новой строки). -h header, —header=header Вместо имени файла (по умолчанию) использует центрированный заголовок страницы. Необычная опция -h "" выводит пустую строку. -i [char[widtli]], — output-tabs[=c/ioi-[vv/eWj]] Замещает идущие подряд пробелы в количестве width символом char (по умолчанию TAB). По умолчанию замещаются восемь подряд идущих пробелов. -J, —join-lines Объединяет полные строки, отключает усечение (опция -W), не выравнивает столбцы, использует разделители, установленные с помощью -S[string]. -1 pagelength, —\ength=page_Iength Устанавливает размер страницы в строках в значение pagelength. По умолчанию принято 66 строк. -m, —merge Печатает все файлы параллельно: по одному в каждом столбце. -п [sep[digits]], — number-lines[=.sep[digi7.s]] Нумерует строки, при этом каждый номер состоит из digits цифр (по умолчанию - 5). Номер строки отделяется от самой строки разделителем sep. По умолчанию в этом качестве выступает TAB. Нумерация входного файла по умолчанию начинается с первой строки. -N number, —first-line-number=nwmier Начинает нумеровать страницы с номера number (на первой строке первой страницы). -о margin, —'mderA=inargin Устанавливает левый отступ в значение number, которое добавляется к ширине страницы. -г, — no-file-warnings Не выводит предупреждения, если не может открыть файл. -s [char], —scparator[=c/ier] Устанавливает разделитель столбцов, но умолчанию 'ГАВ.
558 И Команды -S [siring], ~sep-string[=jr/ring] Разделяет столбцы необязательной сфокой string. По умолчанию с опцией -j применяется TAB, в противном случае - пробел (-S""). -t, —omit-header Запрещает вывод верхнего и нижнего колонтитулов. -Т, — omit-pagination Запрещает вывод верхнего и нижнего колонтитулов, запрещает любое разделение на страницы с помощью установки form feed во входных файлах. -v, —show-noprinting Выводит вместо нензображаемых символов их восьмеричный код, начинающийся с обратного слэша. -w page_width, —w\dlb=page_widtfi Устанавливает ширину страницы в символах, по умолчанию - 72 символа. -W pagewidth, —page-wi<ilh=page_width Всегда устанавливает указанную ширину страницы в символах (по умолчанию 72 символа), выполняет усечение строк, если только не установлена опция -j; не действует с опцией -S или -s. —help Выводит список опций программы и завершает ее. —version Выводит информацию о версии программы и завершает ее. Пример $ pr -h "My book" -160 prim40|lpr $ Выводит на печатающее устройство содержимое файла prim40. Размер страницы установлен в 60 строк, на каждой странице печатается заголовок (верхний колонтитул) My book. Команда pr лишь форматирует файл для печати, вывод обычно осуществляет другая команда: в нашем примере - |рг. printenv печатает все или часть окружения. Синт printenv [option]... [ VARIABLE]... Если никакая переменная окружения VARIABLE не указана, печатает лишении всех неременных. Имеется лишь две тривиальные опции: -help „ -version. Пр1 ер $ printenv HAIL /var/spool/mail/misha
II. Команды 559 printmail фо матирует почту • 1Я послед ющей печати. Синтаксис printmail [-p][filename] Копирует все сообщения из указанного фанла/ilename или почтового ящика пользователя, определенного по умолчанию, разделяя сообщения друг от друга строками тире. Опции -р Сообщения отделяются друг от друга символами form feed (перевода страницы). Пример Ниже показано типичное использование этой команды: $ printmail|1рг $ procmail автономный почтовый процессор. procmail [-ptoY][-f fromwhom][parameter^value\rcfile]— procmail [-toY][-f froowhom][-a argument] -d recipient... procmail [-ptY] -m [parameter=value]...rcfile [argument]... procmail -v Программа procmail может быть вызвана автоматически с помощью механизма перенаправления почты через файл .forward тут же по прибытии почты. Она сразу может переустановить некоторые переменные окружения в значения по умолчанию, затем считывает со стандартного ввода почтовое сообщение до EOF (до конца файла), отделяя тело сообщения от его заголовка, и после этого, если отсутствуют аргументы командной строки, просматривает файл по имени SHOME/.procmailrc. В соответствии с правилами, содержащимися в этом файле, распределяет сообщение в панку справа (правило правой руки). Если инициализационный файл rcfile не найден или его обработка завершилась аварийно, procmail сохраняет почту во взятом по умолчанию системном почтовом ящике. Если в командной строке не указано никаких файлов rcfile. а также отсутствует опция -f, прежде чем считывать содержимое SHOME/.procmailrc, прогрвмма procmail интерпретирует команды файла /etc/procmailrc, если таковые имеются. При создании файла /etc/procmailrc необходимо помнить, что он, в отличие от SHOME/.procmailrc, будет исполняться с привилегиями суперпользователя; их требуется предвари гельно установить. Любые аргументы, содержащие знак равенства, присваиваю!' значения переменным окружения.
560 II Комаяды Ниже приведен список сигналов, принимаемых procmail: TERMINATE преждевременно iaeepuiaeiвыполнение и вновь с гави i почту в очередь HANGU Р преждевременно завершает выполнение н прекращает обработку почты INTERRUPT аналогичен HANGUP QUIT преждевременно завершает выполнение и "молча" теряет почту ALARM вызывает тайм-аут USR1 эквивалентно отключению режима подробной диагностики TJSR2 эквивалентно включению режима подробной диагностики Опции -f fromwhom -a argument -d recipient Выводит информацию о версии procmail, конфигурацию, заданную во время компиляции, и завершает работу. Сохраняет старое окружение. Обычно procmail вначале очищает все переменные окружения кроме TZ. Не "обращая внимания" на ранее установленные переменные, перекрывает их собственными, взятыми по умолчанию значениями. Если одновременно указаны опции -р и -гл, список переустановленных переменных сведется к следующим: LOGNAME, HOME. SHELL. ORGMAIL и MAILDIR. В случае неудачного завершения "смягчает" его: если почта не может быть доставлена на дистанционные узлы, не отбрасывает ее, а возвращает в очередь. В дальнейшем будут вновь предприняты попытки доставки сообщения. Устанавливает значение параметра_/го»тЛо»), рассматривая его в качестве отправителя сообщения, в базовую строку From. Если этот параметр содержит единственный дефис, обновляет временную метку в строке From. Не допуская ничего такого, что генерирует строки From, просто замещает подделку. Принимает традиционный формат почтового ящика Berkeley, игнорируя любые поля Content-length: (длина содержимого). Устанавливает S1 в значение argument. Используется для передачи ме- таинформации через procmail. Выполняет доставку локальному абоненгу recipient. Это возможно, если procmail имеет привилегии суперпользователя или уже запушена с SU1D и SGID данного абонента. Эта опция несовместима с опцией -р. Превращает procmail в почтовый филыр общего назначения. В этом режиме в командной строке может быть задан только файл refde. после которого procmail может воспринимать неограниченное чнечо аргументов.
561 DS вы ает полный отчет о состоянии про ессов. К Синтаксис ps [option] Описанная версия ps принимает несколько видов опций: Unix98 этим опциям предшествует дефис, и они могут быть сгруппированы BSD опции тоже могут быть сгруппированы, но дефис не используется GNU этим длинным опциям предшествуют два дефиса Опции разных видов могут быть перемешаны в произвольном порядке. Оп ии выбираю ие про - ■■ -А Выбирает все процессы. -N Отрицает выбор. -а Выбирает все процессы, связанные с конкретным терминалом, кроме главных системных процессов сеанса, -d Выбирает все процессы кроме главных системных процессов сеанса, -е Выбирает все процессы. Т Выбирает все процессы на конкретном терминале. а Выбирает все процессы, связанные с этим терминалом, в том числе и других пользователей. г Выводит информацию лишь о работающих процессах. х Выбирает процессы, отсоединенные от терминала. On ии, осуще Щ1 i6op процесса по списку -С Выбирает по имени команды. -G Выбирает по RGID; поддерживает имена. -U Выбирает по RUID; поддерживает имена. -g Выбирает из списка номера процессов группы или по имени группы. -р Выбирает по идентификаторам процессов. -s Выбирает процессы заданных сеансов. •' Выбирает процессы, связанные с конкретным терминалом. _и Выбирает по действующему идентификатору пользователя; поддерживает имена. U Выбирает процессы указанных пользователей. р Выбирает по идентификаторам i фоцессов. t Выбирает процессы, снизанные с конкретным термина чом -Group Пыбирнет по RGII1 или по имени i руины.
5b2 It Команды —User -group —pid —sid -tty —user -123 123 Опции -с -f -j -1 -o -У -O X j 1 о s v —format Опции, -H -w С e h О S w —cols Выбираепю RUID или но имени пользования. Выбирает по действующему идеимфиюл ору или по имени i руппы Выбирает по идентификаторам процессов. Выбирает процессы заданных сеансов. Выбирает процессы, связанные с конкретным терминалом. Выбирает по дейс i вующему идеи гификатору или по имени пользователя Подразумевает- —sid. Подразумевает —pid. правляющие форматом вывода Подготавливает информацию для опции -I. Создает полный листинг. Выводит информацию по управлению заданиями (столбцы PGID и S1D дополнительно к обычному выводу команды ps). Создает листинг длинного формата. Выводит в формате, определенном пользователем. Не отображает флагов, но отображает RSS вместо адреса. Предваряет опцию -о (предварительно загружает). Выводит информацию в старом формате Linux i386. Выводит информацию по управлению заданиями (столбцы PPID, TPGID, STAT, UID дополнительно к выводу опции -j). Создает листинг длинного формата.. Выводит в формате, определенном пользователем. Выводит информацию о сигналах. Выводит информацию о виртуальной памяти. Выводит в формате, определенном пользователем. модифицирующие вывод Отображает иерархию процессов. Выполняет широкомасштабный вывод, не усекая информацию до размера строки. Использует низкоуровневый формат для вывода времени ЦП. Показывает переменные окружения команды. Не выводит заголовки. Сортирует вывод. Выводит дополни гельную информацию о завершившихся дочерних процессах. Выполняет широкомасштабный ввод, не усекая информацию до ра «мера строки. Устанавливает ширину жрана.
II. Команды 563 —columns Устанавливает ширину экрана, —width Устанавливает ширину экрана, —cunuilative Включает дополнительную информацию о завершившихся дочерних процессах, —headers Повторяет строки заголовков, --rows Устанавливает высоту экрана, —sort Указывает порядок сортировки, —lines Устанавливает высоту экрана. Информацио ци -V L -help -info -version / Пример Выводит информацию о версии программы. Выводит список форматов. Печатает подсказку. Печатает отладочную информацию. Выводит информацию о версии программы. Выводит информацию о версии программы. $ ps UID root root root root root root root root root root root misha misha Sofia sofia misha $ -af P1D 584 609 616 620 634 638 655 659 667 772 773 784 812 848 873 874 PPID 583 584 609 616 772 577 578 579 848 812 С 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 STIHE 15:43 15:43 15:43 15:43 15:43 15:43 15:43 15:43 15:43 15:44 15:44 15:45 15:48 15:56 15:57 15:57 TTY ttyl ttyl ttyl ttyl ttyl ttyl ttyl ttyl ttyl ttyl ttyl tty3 tty4 tty5 tty5 tty4 TIME 00:00 00:00 00:00 00:00 00:00 00:00 00:00 00:00 00:00 00:00 00:00 00:00 00:00 00:00 00:00 00:00 00 00 00 01 00 02 02 01 04 00 00 00 00 00 00 00 CHD [bash] [startx] [xinit] /usr/bin/gnome-session gnome-smproxy —sm-config-prefix [enlightenment] panel —sm-config-prefix /panel. gnome-help-browser —sm-config-p gmc —sm-config-prefix /gmc-yZeN gnome-terminal gnome-pty-helper -bash -bash -bash tail -f prim74 ps -af Ниже раскрыт смысл столбцов листинга: U1D идентификатор пользователя PI D идентификатор процесса PPID идентификатор родительского процесса С приоритет процесса, используемый планировщиком задач STIME время старта процесса TTY терминал, с которым связан данный процесс TIME общее время работы процесса CMD команда, запустившая данный процесс
II Команды pSf addtablG добавляет таблицу символов в формате Unicode к шрифтам консоли. Синтаксис psfaddtable fontfile tablefile [outfile] Берет шрифты консоли в формате PSF, задаваемые аргументом fontfile (с расширением .psf), и сливает этот файл с таблицей символов в формате Unicode, определяемой аргументом tablefile, создавая файл outfile, если таковой указан. В случае отсутствия аргумента outfile направляет результат слияния на стандартный вывод. Один из аргументов fontfile или tablefile. но не оба сразу, может быть замещен дефисом, в этом случае производится чтение стандартного ввода. Если fontfile уже содержит встроенную таблицу символов Unicode, данная операция игнорируется. Каждая строка в tablefile либо пустая, содержит комментарий, начинающийся с символа #, либо содержит последовательность чисел в следующих форматах: decimal десятичная по умолчанию octal восьмеричная, начинающаяся с О hexadecimal шестнадцатеричная, начинающаяся с Ох Первое число в каждой строчке указывает слот (местоположение) образца в шрифте; это число находится в диапазоне от 0 до Oxff для 256-символьного шрифта и от 0 до Oxlff для 512-символьного. psfgettable выделяет в файле шрифтов консоли ранее включенную таблицу символов Unicode. Синтакси psfgettable fontfile | outfile] Выделяет в файле шрифтов консоли в формате .psf таблицу символов Unicode и преобразует ее в ASCII-файл (который может быть прочитан человеком), используемый psfaddtable. Если вместо щиуиппа fontfile стой г дефис, производит считывание стандартного ввода, результат обработки направляется в outfile. pSTStriptaDlG удаляет ранее включенную таблицу символов Unicode из файла шрифтов консоли. Синтаксис psfstriptable fontfile {outfile]
II. Команды 565 Счи гывае г файл/Ьн</?/е, содержащий шрифш консоли в формате.psf, или стандартный ввод, если вместо аргумеша/он^/'/еуказан дефис, и записывает в указанный файл outfile или на стандартный вывод в случае отсутствия последнего файл шрифтов без ранее включенной (см. psfaddtable) таблицы символов Unicode. DUllnGWS - "вытягивает" новости с одного компьютера и передает их другому. Синтаксис pullnews (-с config]{-s downstream-server] [-qj [remote-server ] pullnews - сценарий на языке Perl, выполняется как обычный пользовательский процесс. Он считывает конфигурационный файл, обычно называемый .pullnews, в исходном пользовательском каталоге и подключается к входящим серверам, где определен в качестве читателя-клиента. В командной строке можно указывать имена сетевых узлов, чтобы ограничить аргументом remole-server набор входящих узлов для подключения, но каждый узел должен быть упомянут в файле .pullnews. Извлеченные статьи передаются исходящему (локальному) серверу downstream-server через команду подпитки NNTP, называемую IHAVE. Эго означает, что компьютер, запустивший pullnews, должен обладать доступом для подпитки исходящего узла новостей. Опции -с config Обычно параметры конфигурации хранятся в файле SHOME/.pullnews пользователя, запустившего программу pullnews, что можно изменить с помощью параметра config. -s downstream-server Обычно подпитывает статьями сервер новостей, запущенный на локальном узле, но с помощью параметра downstream-server это можно изменить и определить другой сервер новостей. -q Ограничивает выдаваемую диагностику. Конфигурационный файл для pullnews содержит набор строк, описывающих входящие узлы подключений, а также группы новостей, от которых будут получены статьи. Строка, описывающая узел для подключения, содержит имя сетевого узла без каких-либо предшествующих непзображаемых символов. Строки, описывающие группы новостей, следуют за строками, описывающими узлы, и обязательно в самом начале содержат пробел, за которым собственно располагается имя группы. Программа pullnews обновляет конфигурационный файл, включая в него время, когда осуществлялась последняя проверка группы новостей, и наивысший номер статьи, благополучно извлеченной и направленной исходящему серверу. pullnews- несложная программа, которая не держит и не регистрирует ряд деталей пересылки статей. В ней также отсутствуют многие особенности, присущие программам такого класса, а именно: удаление статей, базирующееся на условиях, выдвнн\ тых пользователем.
566 II Команды Пример Образец конфигурационного файла pullnews может вьи лядеть следующим образом- sql.1inux.redhat.com сотр.progr.threads 908065512 506 news.lucky.joy dnepr.orbita.ua water.ecolog.est pWCk - проверяет соответствие файлов /etc/passwd и /etc/shadow. Синтаксис pwck [-rq\[passwdlshadow] ] Программа pwck просматривает каждую запись вышеупомянутых файлов, проверяя в них корректность: D количества полей D пользовательских имен (их уникальность) Q идентификаторов пользователей и групп а исходной группы D рабочего каталога D используемой оболочки, или командного процессора. Вместо /etc/passwd и /etc/shadow можно указать альтернативные файлы passwdu shadow. On ии -г Выполняет команду в режиме только для чтения, при этом на все вопросы об изменениях не требует подтверждения (ответ по, если без изменений) пользователя. -q Выполняет изменения в указанном файле (/etc/passwd), не требуя подтверждения пользователя. Программой pwck рекомендуется пользоваться в обязательном порядке еженедельно, особенно после установки системы теневых паролей. С опцией -г команду pwck можно запускать с помощью сгоп, получая отчеты о ее работе но электронной почте. Пример Протокол работы может выглядеть, например гак: т\ root@locslhost.localdomain:/root i— п х Файл Правка Settings Справка puicCrootElocalhost /root]* puck user adro: directory /var/adn does not exist user gopher: directory /usr/lib/gopher-data does not exist user gdro: directory /home/gdm does not exist puck: no changes CrootElocalhost /root]» I
II. Команды 567 pWCOtlV оперирует обычными и теневыми файлами паролей пользователей. Синтаксис pwconv Программа pwconv работает с файлами /etc/shadow и /etc/passwd. Она создает файл теневых паролей из обычного файла паролей и существующего (необязательного) файла shadow. При этом pwconv прежде всего удаляет из файла теневых паролей те элементы, которые отсутствуют в главном файле (passwd). Затем обновляет те элементы файла теневых паролей (shadow), которые не помечены символом х в главном файле (passwd). В файл теневых паролей будут добавлены отсутствующие элементы. И, наконец, пароли главного файла в целях надежности и безопасности будут замещены символом х. Если главный файл паролей редактировался вручную, целесообразно использовать pwconv для обновления файла теневых паролей. При добавлении новых элементов в файл /etc/shadow программа pwconv использует значения переменных PASSMINDAY (минимальное количество дней, разрешенное между изменениями пароля), PASSMAXDAY (максимальное количество дней существования пароля), PASSWARNAGE (срок существования пароля, начиная с которого выдается предупреждение о скором завершении его действия) из файла /etc/login.defs. В файле паролей могут встретиться ошибки: некорректные или дублирующиеся элементы. Поэтому имеет смысл вначале запустить pwck для корректировки этих ошибок, а уж затем pwconv. pwd печатает полное имя текущего каталога. К Синтаксис pwd [option] Все компоненты распечатываемого имени также являются именами каталогов и не могут быть символическими ссылками. Имеет только две тривиальные опции: —help и —version. Поскольку большинство оболочек имеют встроенную команду с таким же именем, не следует удивляться, если ее использование в сценариях даст другой эффект. PWUnCOfW оперирует обычными и теневыми файлами паролей пользователей. нтаксис pwunconv
568 II Команды Создаег фапч паролей из существующею главно!о файла паролей passwd и ттеневого файла shadow, а затем удаляег последний. При лом информация по срокам существования паролей может быть уграчена, pwunconv конвергирует, что может CJUOtcl отображает используемое дисковое пространство и лимиты. Синтаксис quota [-guv|q] quota [-v|q] -u user quota [-v|q] -g group По умолчанию команда quota печатает только квоты пользователя. Опции -g group Распечатывает квоты группы, членом которой является данный пользователь, -u user Действует по умолчанию: распечатывает квоты пользователя. -v Отображает квоты на файловые системы, где указанный пользователь или группа ничего не хранят, -q Информирует только о файловых системах, где превышена квота. Только сунерпользователь может видеть лимиты других пользователей, обычный пользователь—лишь лимиты группы, к которой он принадлежит. quotacheck - проверяет файловую систему на предмет использования 1иска. ксис quotacheck [-д][-u][-R][-vd] -a quotacheck f-д][-и][-vd] filesys... Проверяет файловую систему filesys в част использования дискового пространства пользова1елями и группами. Па выходе получается файл квот для соотвегсгв\ кэшей файловой системы; но умолчанию применяются следующие имена: quota.user файл пользовательских квот quota.group файл групповых квот Структура резулыирующего файла определяется <linux/quota.h>. Программу quotacheck следует запускать при 3ai рузке сне темы (помести гь команд) ее запуска в /etc/rc.d/rc.local). Опции Выводит дополнительную информацию, комментируя депепшн программы.
II. Команды 569 -d Устанавливает режим отладки. -и Проверяет дисковое npocipancmo: файлы и Kaiajioi и полыовагелеи -g Проверяет дисковое пространство: файлы и катало! и ipyiin. -а Проверяет квоты для всех файловых систем, описанных в /etc/fstab. -R При использовании совместно с опцией -а проверяет квоты для всех файловых систем, кроме корневой. Эта команда может быть запущена только суперпользователем. quotaoff отключает использование квот для файловых систем. Синтаксис quotaoff [-vug] filesystem... quotaff [-avug] Сообщает операционной системе, что должны быть отключены дисковые квоты для указанной файловой системы filesystem. Опции -а Отключает использование квот для всех подходящих файловых систем из /etc/fstab. -v Выдает сообщение об отключении квот для каждой файловой системы. -и Манипулирует пользовательскими квотами. Действует по умолчанию. -g Манипулирует квотами групп. quotaon - включает использование квот для файловых систем. quotaon [-vug] filesystem,,. quotaon [-avug] Сообщает операционной системе, что должны быть задействованы квоты для \ казенной файловой системы filesystem. Файлы квотирования должны обязательно присутствовать в корневом каталоге указанной файловой системы; их имена quota.user (параметр userquota в соответствующей строке файла /etc/fstab) и quota.jjroup (параметр groupquota в соответствующей строке файла /etc/fstab). пции -а Включает нснолыованпс киот для всех иодхотншнх флйчоныч систем из /etc/fstab.
<ч7П II Команды .v Выдает сообщение о том, что задействованы квогы для каждой фай ю- вой системы. -и Манипулирует пользовательскими квотами. Действует но умолчанию -g Манипулирует квотами групп. Соответствующая строка с командой quotaon может быгь включена в файл /etc/rc.d/rc.local. ример Если в файловой системе /home установлены дисковые квоты для пользователей, соответствующая строка в /etc/fstab может выглядеть примерно так: /dev/hdaS /home ext2 defaults,usrquota 1 2 ranlib формирует индекс для архива. Синтаксис ranlib [-v|-V][—help] archive ranlib создает индекс для содержимого архива archive и хранит его прямо в архиве. Индексируется каждый член архива, представляющий из себя настраиваемый объектный файл. Можно распечатать содержание индекса с помощью команды пш с опцией -s или —print-armap. Если несколько программ применяют одинаковые библиотечные функции, то последние могут быть собраны в единый библиотечный архив. С индексированным библиотечным архивом работать несравненно удобнее: быстрее выполняется подключение нужных членов в процессе компоновки, да и утилиты самой библиотеки могут вызывать друг друга, не прилагая больших усилий для поиска. Программа GNU ranlib-это другая форма GNU ar. Выполнение программы ranlib эквивалентно запуску ar -s. Опции -v, -V Выводит информацию о версии программы и завершает ее работу, —help Выводит список поддерживаемых форматов. В настоящее время поддерживаются такие форматы: elf32-i386 symbolsrec a.out-i386-linux tekhex elf32-little binary elf32-big ihex srec trad-core
II. Команды 571 ГЗГр манип ли» ет системной таблицей RARP. Синтаксис rarp [-V][-h] rarp -а rarp (-v]-d hostname rarp [-v][-t type] -s hostname hw_addr rarp -f filename Иногда возникает необходимость определить IP-адрес по известному адресу Ethernet. Для этого существует RARP - Reverse Address Resolution Protocol - протокол обратного разрешения адреса. RARP - полная противоположность ARP (см. описание этого протокола в агр). Оп ии -V Выводит используемую версию программы. -v Выдает подробные сообщения. -п Показывает числовые адреса вместо того, чтобы пытаться определить символические имена узлов, порт или имена пользователей. -t type При установке или чтении таблицы RARP необязательный параметр type сообщает rarp, какой класс элементов следует проверять. По умолчанию этот параметр принимает значение ether (код оборудования 0x01 для IEEE 802.3 10Mbps Ethernet). Другие значения могут определять сетевые технологии, а именно: tr (16/4 Mbps.TR) ах25 (AMPR Ах.25) netrom (AMPR NET/ROM) arcnet (ARCnet) dlci (Frame Relay DLCI) -а Выводит все элементы таблицы RARP. -d hostname Удаляет все элементы таблицы RARP для указаннот сетевого узла. -s hostname hwaddr Создает RARP-разрешение адреса для сетевого узла hostname, hwaddr- это адрес оборудования. Для класса Ethernet используется 6 байт в шестнадцатеричном виде, разделенных двоеточием. -f filename Дейсгвует подобно опции -s, но только в этом случае элемент берегся из файла filename. Очень часто таковым файлом является /etc/ethers.
И Команды опирует файл в 1истан ионн ю систему и из нее. Синтаксис гср [-p] filel file2 гср [-pr] file directory Команда гср копирует отдельные файлы и каталоги, явно указываемые в командной строке. В качестве аргументов команды может выступать стандартный локальный или дистанционный файл. Один из аргументов может быть локальным каталогом или файлом. Дистанционный файл должен указываться в следующем формате: I/ «я хоста „маршрут имя_пользователя@ имяхостажияфайла r-команды, и в том числе гср, позволяют регистрироваться или выполнять процессы на дистанционной машине без пароля и даже с привилегиями суперпользователя. Доступом к дистанционному серверу фактически управляют два следующих файла конфигурации: /etc/hosts.equiv и .rhosts. Правила доступа, указанные в файле /ctc/hosts.equiv, распространяются на всех пользователей данной машины, а файл .rhosts, находящийся в исходном (домашнем) каталоге пользователя, управляет лишь доступом к конкретной учетной записи. Для дополнительной безопасности файл/etc/hosts.equiv должен принадлежать суперпользователю, а файл .rhosts - пользователю, пытающемуся получить доступ. Такой механизм аутентификации нередко называется "rhosts" (дистанционные хосты). Опции -г Если любой из исходных файлов является каталогом, гср копирует его рекурсивно. -Р Сохраняет время модификации, права владения и полномочия на все копируемые файлы такими, как у оригинальных файлов. Примеры Копирование пользователем anna полного каталога с server4 в /usr/copy на servers выглядит следующим образом: server4# гср -г /usr/local/bin anna8server5:/usr/copy rCS меняет атрибуты RCS-файла. Си таксис res [option] file... Создает новые RCS-файлы или меняет .нрнбугы существующих. 1и'8-файл (фор- маг приведен в приложении V) содержи г многочисленные версии гексга (моле! и гср
II. Команды 573 обьектного кода, и бинарною), список досгупа, журнал pel исфации и зменении, текст описания и некоюрые управляющие агрибуты. Для рабо1ы команды res необходимо, чтобы имя пользователя, ее вызывающего, находилось в списке досгупа, помимо случаев, когда этот список пустой, вызывающий является владельцем файла или сунер- пользователем или присутствует опция -i. Маршруты, сопоставленные с суффиксом RCS, соотвегс!вуют RCS-файтам, все остальные - рабочим файлам. Имена назначаются по нарам (см. ci). Синтаксис, применяемый для определения версий, также представлен в описании ci. On ии -i -alogins -Koldfile -e[Iogins] -b[rev] -cstring -ksubst -l[rev] -u[rev] Создаст и инициализирует новый RCS-файл, но не сохраняет никакую версию. Если RCS-файл не имеет маршрутного префикса, пытается разместить его сначала в подкаталоге ./RCS, а загем в текущем каталоге. Если RCS-файл уже существует, печатает сообщение об ошибке. Дополняет список доступа RCS-файла регистрационными именами из списка logins, разделенными запят ыми. Дополняет список доступа RCS-файла содержимым списка доступа к файлу oldfile. Удаляет разделенные запятыми pei истрационные имена, содержащиеся в списке logins, из списка доступа RCS-файла; если параметр logins отсутствует, полностью удаляет содержимое списка доступа RCS-файла. В качестве ветви по умолчанию назначает ветвь, определяемую rev. Если параметр rev отсутствует, динамически переназначает наивысшую ветвь ствола (trunk) в ветвь по умолчанию. Устанавливает заголовок комментария в соответствии с содержимым строки string. При создании файла с помощью ci или через res -i (без опции -с) включает суффикс имени рабочего файла в заголовок комментария. Устанавливает подстановку (замещение) ключевого слова, принятую по умолчанию, в значение snbsl (см. со). Чтобы восстановить обычную, действующую по умолчанию подстановку ключевого слова, применяется команда res -kkv. Блокирует версию с номером rev. Если задана ветвь, блокирует самую последнюю версию этой ветви. Если параметр rev отсутствует, блокирует самую последнюю версию ветви, принятой по умолчанию. Блокирование препятствует накладкам при внесении изменении. Если кто-нибудь еше уже держит блокировку, она будет "сломана", как по команде res -u. Разблокирует версию rev. Если задана ветвь. раШлокируетсшхю последнюю версию ветви. Если параметр rev отсутствует, снимает самую последнюю блокировку, которую держит вызнавший команду пользователь. Как правило, только тот, кто блокирует версию, может ее разблокировать. Если кто-ю сломал "замок" версии, гшчяс же ft)лет послано почтовое сообщение установившему >гог замок. Сообщение со-
574 II Команды -L -mrev.msg -imame[:[rev]] -Nname[:[rev]] -orange -q ■ -I -sstate[:rev] -t[/»fe] -t-string держит комментарий с ходагайсшом от взломщика. Комментарий -»а вершается но EOF (конец файла) или строкой, содержащей только точку в первой позиции. Устанавливает режим неукоснительного блокирования, обязательный при выборке даже для владельца RCS-файла. Эта опция применяется для совместно используемых файлов. Устанавливает режим более либерального блокирования, при котором владельцу файла нет необходимости блокировать файл для проверки. Эту опцию не следует применять для совместно используемых файлов. Замещает сообщение регистрации версии rev сообщением msg. Ассоциирует символическое имя пате с ветвью или версией rev. Удаляет символическое имя, если отсутствуют двоеточие и параметр rev; в противном случае печатает сообщение об ошибке, если пате уже связано. Действует подобно опции -п, но только перекрывает любое из ранее существующих назначений имени пате. Удаляет версии, попадающие в диапазон range. В диапазоне может содержаться и единственный номер. Если range -это номер ветви, удаляется самая последняя версия ветви. Задание диапазона в форме rev\:rev2 подразумевает версии от rev\ до rev2 на одной ветви, :rev предполагает версии от начальной до rev на одной ветви, а если параметр определен в форме rev:, то рассматриваются версии, начиная с rev и далее до самой последней на этой ветви. Не выводит диагностику. Осуществляет переход в интерактивный режим работы, даже если терминал не предназначен для стандартного ввода. Устанавливает индикатор состояния версии rev в значение state. Если параметр rev - номер ветви, воздействует на самую последнюю версию ветви. Если rev отсутствует, выбирается самая последняя версия ветви, взятой по умолчанию. Любой идентификатор пригоден для параметра state. По умолчанию команда ci устанавливает индикатор состояния в значение Ехр. Ниже приведены наиболее часто используемые индикаторы: Ехр экспериментальная Stab стабильная Rel выпущенная (реализованная, или законченная) Записывает содержимое файла file в RCS-файл в качестве текста описания, удаляя при этом ранее существовавший текст. Маршру г к фл'п\ ие может начинаться с дефиса. Если параметр file отс> тс гвует, нол\ чп- еттекст описания со стандартного ввода, завершая процесс по ЕОК (концу файла) или встретив единственную точку и первой позиции о роки. Записывает содержимое строки .wiring в RCS-файл в качестве темчи описания, удаляя при этом ранее сущее пюытший гскст.
И. Команды 575 -Т Сохраняет время модификации RCS-файла, чго полемо для последующей работы с программой make. -V Печатает версию RCS. -Vh Эмулирует для RCS номер версии п (см. со;. -xsuffixes Чтобы охарактеризовать RCS-файлы, использует суффиксы suffixes (см. ci). -zzone Использует параметр zone в качестве часового пояса, принимаемого по умолчанию. Эта опция неэффек i ивна, она применяется лишь для совместимости с другими RCS-командами. rcsclean аляет рабочие файлы RCS. Синтаксис rcsclean [option][£ile...] Команда rcsclean удаляет рабочие файлы с которыми еще не работали, а с опцией -и разблокирует и удаляет те рабочие файлы, которые были в работе, но оставались неизменными. Для каждого заданного файла file команда rcsclean сравнивает рабочий файл и версию соответствующего RCS-файла. Если обнаруживается разница, команда не производит никаких действий. В противном случае сначала производится разблокирование версии, если задана опция -и, а затем удаляется рабочий файл, если только существуют полномочия на запись рабочего файла и версия заблокирована. Действия, выполняемые с помощью соответствующих команд res -u и rm -f, протоколируются и выводятся на стандартный вывод. Файлы группируются по парам (см. ci). Если не указаны конкретные файлы, будут удалены все рабочие файлы текущего каталога. Маршруты, сопоставленные с суффиксом RCS, соответствуют RCS-файлам, все остальные- рабочим файлам. Опц -ksubst Использует для ключевых слов подстановку т una subst, отрабатывая сравнение версии (см. со). -n[rev] Лишь сообщает о том, что могла бы сделать rcsclean. в действительности никакие действия не выполняются. -q[rev] He печатает диагностику. -r[rev] Лишь указывает версию rev для сравнения. -Т Сохраняет время модификации RCS-файла. даже если оно меняется по причине снятия индикатора блокирования. -u[rev] Разблокирует версию rev, если она была заблокирована и не было обнаружено различий. -V Печатает версию RCS.
576 И Команды -V" Эмулирует для RCS номер версии п (см. со). -xsuffixes Чтобы охарактеризовать RCS-файлы, использует суффиксы suffixes (см. ci). -zzone Использует zone в качестве часового пояса для замещения ключевого слова (см. со). . Работа rcsclean завершается с нулевым кодом, если были успешно проведены все операции. Пропущенные рабочие и RCS-файлы молча игнорируются. Пример Чтобы "выяснить планы" rcsclean, была задана следующая команда: $ rcsclean -n rm -f prim51 rm -f prim41 $ В планы команды rcsclcan входит удаление двух файлов: prim51 и prim41. Осторожность не помешает! rcsdiff сравнивает вереи " S. Синтаксис rcsdiff [-ksufcst] [-q] l-rrevl[-rrev2]) [-T] [~V[n] ] [-xsuffixes] [-zzone] [-diff options] file... Команда rcsdiff запускает diff для сравнения двух версий revl и rev2 каждого заданного RCS-файла/У/е. Маршруты, сопоставленные с суффиксом RCS, соответствуют RCS-файлам, все остальные — рабочим файлам. Имена специфицируют пары - RCS-файлов и рабочих файлов. Оп ии -ksubst Выполняет замещение (подстановку) ключевых слов при извлечении версий (см. со) в стиле subsl. Если опция -к не задана, по умолчанию подстановку ключевых слов определяет опция -kkv. а режим обработки рабочего файла устанавливается командой со -1. -q Подавляет вывод диагностики. -irev Может указывать ноль, одну или две версии. Если парамет ры revl и revl отсутствуют, rcsdiff сравнивает самую последнюю на ветви, взятой по умолчанию (trunk - ствол), с содержимым соответствующего рабочего файла. Если задан параметр revl, a revl - отсутствует, то rcsdiff сравнивает RCS-файл версии revl с содержимым соответствующего рабочего файла.
II Команды г_ Если заданы одновременно revl и nv2, команда rcsdifT сравнивает .п. две версии RCS-файла. Оба параме.ра revl и rev2 мо.уг быгьзаданы в числовом или символьном формам, -diff options Передае г опции options команде dill. Воспринимаются любые опции прикладываемые к обычным файлам. Остальные опции аналогичны своим двойникам в других командах RCS (cm res) Команда resdiff устанавливает код завершения, равный 0, если при сравнении не была обнаружена разница; если при сравнении были найдены некоторые различия код завершения устанавливается в 1. В случае возникновения проблем устанавливается код завершения, равный 2. rCSintTO введение в команды системы RCS. RCS (Revision Control System - система управления версиями) поддерживает многочисленные версии файлов. Система RCS автоматизирует хранение, выборку, регистрацию, идентификацию и слияние версий. RCS полезна для поддержки часто меняющихся исходных текстов программ, документов, i рафики, форм, писем. Основной пользовательский интерфейс чрезвычайно прост. Новичку достаточно знать две команды: ci и со. Первая из команд принимает на хранение содержимое в архивный RCS-файл (формат приведен в приложении V). Команда со предоставляет запрашиваемую версию из RCS-файла. Ниже перечислены основные функции RCS: D Берет на хранение и предоставляет многочисленные версии текста. RCS сохраняет все старые версии очень эффективным способом. Корректировки больше не портят орш инальный файл, так как остаются доступными предшествующие версии. Осуществляет выборку содержимого по целому ряду показателен: номер версии, символические имена, даты, авторы, состояние. U Поддерживает полную историю изменений. RCS решетрирует все изменения автоматически. Кроме собственно текста RCS хранит сведения об авторе, даты и время, сообщения регистрации, позволяющие определить, что случилось с файлом. и Призвана разрешать конфликты доступа, когда два или более программистов берутся корректировать одну и ту же версию. а Поддерживает дерево версий. Сохраняет древовидную ст руктуру обижающую родственные отношения между версиями. а Связывает версии и разрешает возникающие конфликты, если приходится oipa- багывать перекрывающиеся изменения. а Управляет реализациями версий. Версиям моцтг быть назначены символические имена, а именно: released (реализованная, или вын>iiichiuwi. stable (стабильная), experimental (ткеперимсн.альная) и т.д. Бл.ихпаря нон во.можнос- 1и очень просто описывас1ся коифш урацпя прощаммного модчля. U Автома,ически идеи.ифнцнруп ЫЖДУ» версию по имени, номеру версии, датх- со'шаиня, авюру. 14 W ЛЛА
578 II Команды □ Минимизирует дисковое пространство, 1ребуемое для хранения версии, бл<ио- даря гому. что сохраняет не сами версии, а изменения, преобразующие предшествующую версию в текущую. Предположим, что пользователь имеет исходный файл программы на языке С по имени main.с и собирается постави гь его иод контроль RCS. Если он еще не создал, то самое время создать каталог RCS: mkdir RCS С помощью следующей команды создается RCS-файл в каталоге RCS: ci main.с Далее необходимо извлечь самую последнюю версию RCS-файла и записать ее в файл main.c: со main.c Если требуется отредактировать самую последнюю версию, необходимо набрать такую команду: со -1 main.c Файл будет заблокирован и вы спокойно сможете его отредактировать, не опасаясь, что кому-то одновременно понадобится сделать то же самое. Предположим, что после некоторой корректировки пользователь захочет узнать о проделанных изменениях. Следующая команда расскажет о разнице между самой последней проверенной версией и рабочим файлом: rcsdiff main.c А вот так можно вновь сохранить измененный файл: ci main.c Следующая команда заблокирует именно для вас самую последнюю версию файла, если только другой пользователь не опередил вас: res -1 main.c Предполагается, что именно персона, блокирующая версию, может осуществлять ее модификацию. Но даже заблокированная версия может быть доступна другим для чтения и компиляции. Если RCS-файл - приватный, а вы - единственная особа, которая к нему обращается, нет необходимости столь строго осуществлять блокирование. Отключение и включение блокирования можно осуществлять следующим образом: res -U main.c res -L main.c Если вы не хотите загромождать свой рабочий каталог RCS-файламн. создайте подкаталог RCS в вашем рабочем кат алоге. Команды RCS сначала обрата гея к этому каталогу. С помощью команды ci можно назначить номер версии: ci -r3 main.c ci -гЗ.1 main.c
II Команды 579 А с помощью команды со можно вызвать требуемую версию: -r3 main.с -г3.1 main.с Команда со без указания версии выбирает самую последнюю - trunk (на основной ветви). Обычно ее номер состоит из двух полей; более двух полей требуется для branches (ветвей). ci -Г2.3.1 Эта команда начинает ветвь 1 и версию 2.3. Новая версия получит номер 2.3.1.1. RCS может вставля гь специальные строки в исходный или объектный код. Для этого необходимо поместить в текст (в комментарий) маркер $ld$. Этот маркер будет замешен строкой следующего формата: Sid: иия_фаипа версия дата время автор состояние $ Если поместить маркер на первой странице каждого модуля, можно видеть, с какой версией работаешь. Чтобы записать маркер в объектный код, его следует поместить в строку литералов. Для языка С это делается следующим образом: static char rcsid[]="$Id$n; Команда ident извлекает маркеры из любого файла, даже объектного или дампа. Таким образом с помощью ident легко определить, какая версия используется в программе. Маркер $Log$ аккумулирует все сообщения регистрации, с его помощью можно поддерживать полную историю изменений файла внутри него. rCSmGrCJG выполняет слияние версий RCS. Синтаксис rcsmerge [option] file... Команда rcsmerge включает различия между двумя версиями RCS-файла в соответствующий рабочий файл. Маршруты, сопоставленные с суффиксом RCS, соответствуют RCS-файлам. все остальные - рабочим файлам. Имена специфицируют пары - RCS-файлов и рабочих файлов. Как минимум одна и как максимум две версии могут быть указаны с одной из опций, приведенных ниже, как правило, с опцией -г. Если определена только одна версия, обычно в качестве второй берется самая последняя версия на ветви по умолчанию (очень часш наивысшая ветвь на стволе). Ветви ми у г отдаваться в числовом или символьном формате. Опции -А Оообшае) о возникших конфликтах и стиле опции -А команды «НПЗ Июпочае! нее различия между/;7с2 и /;7еЗ njilel (см. difO) и сомлст подробную диагностику.
580 II. Команды ~Е, -е Эти опции указывают типы возникших конфликтов, но создают меньший объем диагностики, чем опция -А (см. diff3). По умолчанию принята опция -Е. Если указана опция -е, команда rcsmerge не предупреж- дае г о конфликтах. -ksubsi Использует замещение (подстановку) ключевых слов в стиле subst. -p[rev] Вместо перезаписи рабочего файла направляет результат слияния на стандартный вывод. -q[rcv] He печатает диагностику для указанной версии. -r[rev] Выполняет слияние в соответствии с версией rev. -V Печатает версию RCS. -Vn Эмулирует для RCS номер версии и (см. со). -xsiiffixes Чтобы охарактеризовать RCS-фанлы, использует суффиксы suffixes (см. ci). -Lzone Использует zone в качестве часового пояса для замещения ключевого слова (см. со). Если при отработке различий между версиями не возникает перекрытий, устанавливается код завершения, равный 0: если обнаружено несколько перекрытий, коду завершения присваивае гея значение 1; в случае серьезных проблем устанавливается код завершения, равный 2. Пример Выполним слияние версий 1.1 и 1.3 файла prim39: = misha@localhosUocaldomain:/homB/misha [mishaGlocalhost misha]$ rcsmerge -p -rl.l -rl.3 prim39>prim39p RCS file: RCS/prlm39,u retrieving revision 1.1 retrieving revision 1.3 Merging differences between 1.1 and 1.3 into prim39; result to stdout rcsmerge: warning: conflicts during merge [mishaGlocalhost nisha]$ | rdist - клиентская программа распределения дистанционных файлов. Синтаксис rdist [-DFn][-A лига][-а пиш][-й var=value\[-1 iocal-Iojopts] [-L remote-logopts]{-f distfile][-M яиш][-ш host][-t timeout] [-p rdistd-pat/](-P transport-pat*] [лапе — ] Команда rdist осуществляет поддержку идентичных копий файлов по многочисленным хостам, сохраняя владельца, группу, режим, время модификации файлов, если это возможно, и также может обновлять выполняющиеся нрофаммы.
II. Команды 581 Команды rep и &ср копируют отдельные файлы и каииюш, явно умываемые в командной строке, югда как rdist больше всего подходит для распространения больших совокупностей файлов, в юм числе хранилищ upoi раммного обеспечения или файлов конфигурации системы. Для распространения файлов из центрально! о хранилища на нескольких дистанционных хостах с соблюдением специальных правил, содержащихся в файле конфигурации, служит команда rdist. Практически все дистрибутивы Unix содержат команду rdist, хотя более старая ее версия базируется на орш иналышй команде rdist из BSD 4.2. А более новые версии этой команды обладают дополнительными функциональными возможностями. Файл конфигурации команды rdist называется distfllc. Он содержит все определения и правила, которые требуются команде rdist для правильного распространения ваших файлов. Применение файла distfllc указывается с помощью флага -f, а иначе команда rdist осуществляет поиск файла Distfllc в текущем каталоге. Основные опции -А тип Устанавливает минимальное число свободных дескрипторов файлов в файловой системе, существующих для rdist и позволяющих обновлять или инсталлировать какой-нибудь файл. -а пит Устанавливает минимальное количество свободного пространства (в байтах) в файловой системе, существующего для rdist и позволяющего обновлять или инсталлировать какой-нибудь файл. -D Разрешает обширные отладочные сообщения. -d var=vahie Определяет значение переменной var, перекрывая значение в distflle. -F Не разветвляет никакие дочерние процессы rdist, все клиенты обновляются последовательно. -f distflle Указывает альтернативный distflle. Если вместо имени файла стоит дефис, считывает со стандартного ввода. -1 logopts Сообщает rdist, какие опции регистрации использовать локально, rdist использует коллекцию средств предопределенных сообщений, каждое из которых содержи г список типов, указывающий, какие типы сообщений направлять этому средству. Как локальный ^HeHT(rdist), так и дистанционный сервер (rdistd) имеют свои собственные типы сообщений. -L logopts Сообщает rdist, какие опции регистрации передавать на дистанционный сервер rdistd. -М пит Устанавливает максимальное число параллельно выполняющихся дочерних процессов программы rdist. По умолчанию - 4. -m host Только запускает правила для заданного хоста host. -п Печатает команды, не выполняя их, что полезно для отладки distflle. -р rdistd-puth Устанавливает для сервера rdistd маршрут поиска целевых чостов. -Р transport-path Устанавливает маршрут к используемой транспортной комлнче irsh- подобной, скажем, ssli).
II Команды -I timeout Задает период гайм-ayi а в секундах в ожидании ответа от дистанционного сервера rdist. По умолчанию - 900 секунд. Параметр logvpts, употребляемый с флагами -I и -L, выглядит следующим образом: средство—пшпы.средство=питы... Известны следующие среде гва: stdout направляет сообщения на стандартный вывод file регистрирует сообщения в файле ("Ше=имя-файла=типы") syslog использует средство syslogd notify использует внутреннюю особенность rdist в сочетании с адресом, по которому отправляет уведомительное сообщение Типы сообщений, разделенные запятыми, задаются в виде списка. Известны такие типы: change info notice nerror ferror warning debug all инсталлируемые или обновляемые файлы общая информация общая информация об измененных компонентах обычные (не фатальные) ошибки фатальные ошибки предупреждения отладочная информация все сообщения кроме отладочных Синтаксис для установки значения переменной в файле distfile имеет следующий вид: name = value names = ( valuel value2 ... ) Скобки требуются в том случае, если переменной присваивается список значений. Правила distfile имеют следующий формат: label: source_list -> destination_list command_list Здесь sourcclist содержит список исходных (распространяемых) файлов. dcstinationlist — имена хостов, на которых эти .файлы должны быть распространены, a commandlist — необязательные команды для выполнения на дистанционном хосте до или после копирования файлов. Если одним из источников распространения является каталог, он рекурсивно копируется в указанные места назначения. А вот label представляет собой дополнительную метку, которая может быть использована в командной строке для выборочного выполнения отдельных частей файла distfile. В списке исходных файлов могут быть использованы такие символы подстановки (замещения) как * и ?. Кроме того, правила могут содержать примитивы, являющиеся действиями, которые команда rdist должна предпринять при обновлении дистанционных файлов. Примитивы перечисляются под каждым правилом и отделяются дру| от др\га ючкой с запятой. Ниже приведены некоторые из наиболее употреби гельных прими швов.
II Команды 583 except иия-файш...; Не распространяет указанные файлы. exceptpal шаблон...; Не распространяет файлы, имена которых совпадают с шаблоном. install [опции] место-назначения; Инсталлирует файл с отличным от исходною именем, что удобно для передачи файлов в отличающийся от исходного каталог. notify офес; Отправляет по указанному адресу электронную почту, в которой перечисляются все обновленные файлы и любые возникшие ошибки. special [имя файла]... командная-строка; Запускает команду оболочки после обновления каждого перечисленного файла. Если файлы не указаны, выполняет команду для каждого файла, обновляемого согласно данному правилу. cmdspecial командная-строка; Запускает команду оболочки после обновления всех файлов. Пример А вот такое содержимое distflic позволяет автоматически осуществлять рестарт Web-сервера Apache на каждом из перечисленных серверов после того, как все его конфигурационные файлы будут обновлены: WEBSERVERS=(apple pear plum) FILES=(/usr/local/apache/conf) web: ${FILES} -> ${WEBSERVERS) cmdspecial "/usr/local/apache/bin/apachectl restart"; Каталог, указанный в переменной FILES, будет распространен на хосты, перечисленные в WEBSERVERS. readelf выво ит информацию о оайлах формата ELF. Синтаксис readelf [-а|—all][-h|—file-header][-1|—program-headers|—segments] [ _s —section-headers | —sections ] [ -e j —headers ] [ -s | —syms | —symbols ] [ _n —notes ] [ -r | —relocs ] [ -d | —dynamic ] [ -V | —version-info ] [_D —use-dynamic И-x number]—hex-dump=nuiDjber] |-w[liapr]|—debug-dump[=info, =linef =abbrev, =pubnames, =ranges]] (—histogram][-v|—version][-H|—help] elffile... Программа readelf выводит информацию об одном или более файлов elffile. По меньшей мере должна быть указана хотя бы одна опция кроме -V или -11. Опции -a, —all Указывает одновременно несколько опции: --file-header --program-headers
584 II Команды --sections —symbols —relocs —dynamic --notes —version-info -h, —file-header Выводит информацию, содержащуюся в заголовке файла ELF -1, --program-headers, —segments Выводит информацию, содержащуюся в заголовке файлового сегмента, если таковой имеется. -S, —section-headers, —sections Выводит информацию, содержащуюся в заголовке файловой секции, если таковая имеется. -s, —syms, —symbols Выводит элементы секции, содержащей таблицу символов (идентификаторов) файла, если таковая имеется. -е, —headers Выводит все headers (заголовки) файла, что эквивалентно опциям -h, -1, -S. -n, --notes Выводит содержимое сегмента Note, если таковой имеется. -г, --relocs Выводит содержимое секции настройки файла, если таковая имеется. -d, --dynamic Выводит содержимое динамической секции файла, если таковая имеется. -V, —version-info Выводит содержимое секций версий, если таковые имеются. -D, --use-dynamic Предлагает программе readclf использовать именно таблицу символов (идентификаторов) в динамической секции файла. -х number, — he\-<ii\mp=mimber Выводит содержимое указанной секции number как шестнадцатерич- ныйдамп. -w[liapr], —debug-dump[=info, =line, =abbrev, =pubnames, =ranges] Выводит содержимое отладочных секций файла, если таковые имеются. Одна из необязательных букв или слов, следующих за переключателем, указывает тип информации отладочных секций. —histogram Выводит гистограмму блока, содержащего размеры (длины) символов, когда распечатываются таблицы символов (идентификаторов), -v, —version Выводи г информацию о версии программы. -Н, —help Выводит список опций программы readelf.
II. Команды 585 reaumsg извлекает сообщения из почтовой папки Синтаксис readmsg [-anhp][-f folder][-w weedlist [selection...]] Программа readmsg выбирает почтовые сообщения из почтовой папки. Одно из полезнейших применений этой программы заключается в том, чю если вы составляете в редакторе ответ на почтовое сообщение, rcadmsg может вытащить копию оригинального сообщения в буфер редактирования. Когда readmsg запускается из elm, она действует несколько по-другому, нежели напрямую запущенная из командной строки. Чтобы указать извлекаемые сообщения, применяется аргумент selection. Если в качестве значения аргумента определен символ *. из почтового ящика будут выбираться все сообщения. Можно указать список номеров сообщений, разделенных пробелами. При этом символы 0 и S указывают на последнее сообщение почтового ящика. В качестве аргумента selection может быть определен некоторый текст для сопоставления. В этом случае извлекается почтовое сообщение, содержащее заданный текст. Опции -{folder Использует указанную папку folder вместо взятого по умолчанию почтового ящика входящих сообщений. -w weedlist Выводит на экран список требующихся почтовых заголовков. -h Игнорирует -w weedlist и при выводе текста сообщения на экран включает в него полный заголовок сопоставленного сообщения или сообщений. -п Игнорирует -V/ weedlist и при выводе исключает все заголовки. -р Использует Ctrl+L (прогон, или протяжка страницы) между заголовками сообщений. -а Выводит все сообщения, содержащие сопоставленный по шаблону текст, а не только первое. Чтобы этот флаг возымел действие, в командной строке обязательно должен быть указан шаблон. Если пользователь запускает readmsg из elm, следует учесть ряд отличий. В роли взятой по умолчанию почтовой папки в этом случае выступает текущая, обрабатываемая в elm папка, а вовсе не обязательно папка входящих сообщений пользователя. В командной строке можно не указывать аргумент selection. В этом случае rcadmsg извлекает сообщения, которые пользователь уже выбрал в elm. Если нодьзонатеаь уже работает с некоторыми сообщениями, помеченными тегами, что должны быть все помеченные сообщения; в противном случае будет выбрано текущее обрабатываемое сообщение. Обычно rcadmsg использует номера сообщении в соответствии с н\ порядком расположения в почтовом ящике. Но, если rcadmsg вызвана in elm и при пом не талана опция -Г, номера сообщений будут отсортированы так, как это выполняет elm при выводе их на экран.
586 II Команды Обычно readmsg выбирает и выводит несколько «головков почтовою сообщения. По умолчанию в список включаются такие заголовки: Subject: From: То: Сс: Date: Любой заголовок, начинающийся с Apparently (очевидио). Выбор заголовков осуществляется с помощью опции -w. Аргументом к этой опции служит список имен заголовков, разделенных пробелами или заняшми. В данном списке могут содержаться сокращенные имена заголовков: элемент From будет сопоставлен с From_ (подчеркивание может использоваться для представления пробела) или с From:. Список может начинаться с восклицательного знака, что подавляет приведенный за ним заголовок. Если в упомянутом списке не содержится никаких заголовков, по умолчанию принято следующее: readmsg -w "Subject: From: To: Cc: Apparently_ Date:" reboot перезагружает систему. Синтаксис reboot [-n][-w][-d][-f][-i] Делает соответствующую запись в /var/log/wtmp и предлагает ядру выполнить перезагрузку системы. Если команда reboot вызвана, когда система не находится на уровне выполнения 0 или 6. вместо нее будет вызвана shutdown с флагом -h или -г. ции -п Не выполняет sync перед перезагрузкой. -w Фактически не выполняет перезагрузку, а лишь делает запись об этом в /var/log/wtmp. -d Ничего не записывает в файл /var/log/wtmp. -f Заставляет выполнить перезагрузку, а не shutdow n. -i До перезагрузки завершает работу всех сетевых интерфейсов. Данная команда является привилегией суперпользователя. reconfig - преобразует старый файл Xconfig в новый XF86Config. Синтаксис reconfig Xconfig XF86config
II. Команды 587 I lpoi рамма reconfig преобразует Xconfig- конфш урационныи файл X Window версий чиже 3.1. в конфигурационный файл XFK6Config. В насшящее время исполыу- ется конфш урационныи файл нового образца по имени XF86Config, куда более информативный, чем Xconfig. Поэтому после преобразования требуется ручная корректировка. rGGnST-COnTICJ-ClST© устанавливает системные дату и время. Синтаксис redhat-conf ig -date Вы можете применять графическое иис грументальное средство X Window под названием redliat-con fig-date. В окне терминала (xlerm) сеанса X наберите следующую команду: $ redhat-config-date & Но можно также запустить redhat-config-date, выбрав из основного меню (Red Hat Linux 9) System Settings (Системные параметры) -^Date and Time (Дата и время). Вам сразу же будет предложено ввести пароль суперпользователя, если только вы уже не запустили сеанс регистрации в качестве суперпользователя. Эта клиентская программа позволяет установить дату и время, используя календарь и временные поля. Вы также можете добиться обновления информации даты и времени через сеть, набрав имя хоста дистанционного NTP-сервера. Щелкните на клавише Time Zone (Часовой пояс), чтобы изменить или проверить часовой пояс вашей системы. Текущий часовой пояс системы назначается с помощью файла /etc/localtime, который является копией файла БД часовых поясов. Эта БД расположена под каталогом /usr/share/ zoneinfo. Упомянутый файл изменится, если вы с помощью redhat-config-date поменяете часовой пояс. Пример Как выглядит главное меню программы redhat-config-date (русская версия Red Hat Linux 9) вы можете увидеть на следующей странице. redhat-config-keyboard конфигурирует клавиатуру. и ис redhat-config-keyboard Вы можете применять графическое инструментальное средство иод названием redhat-config-keyboard, чтобы сконфигурировать клавиатуру, используя текстовую консоль. Если вы не используете X, команда rcdUat-config-kcvboard может быть запушена, чюбы поменять щи клавиатуры и язык. Конфш урацня клавиатуры хранится в файле /ctc/sysconfig/kcyboard. Гели вы используете X, в окне терминала (xlerm) сеанса X наберите следующую команду:
588 II. Команды Пример к команде redhat-conjig-dale (см. предыдущую страницу). Главное меню программы redhut-config-dale (русская версия Red Hal V в • j.B^ • ими. Linux 9) - в Ж Дата и время' Часовой пояс Дата Время 4 Сентября ► , Век 7 14 , 21 28 Пнд 1 в 15 22 29 Втр 2 9 16 23 30 Сря 3 10 17 24 Чте 4 11 1в 25 i Птн 5 12 19 26 2003 ► С«т в 13 20 шш Текущее время : 16:23:05 Минуты : 20 Секунды: 43 Network Time Protccol Ваш компьютер может синхронизировать свои часы с удаленным сервером, на котором работает служба NTP [Network Time Protocol). Q Разрешить Network Time Protocol Сервер: | 13 redhat-config-keyboard продолжение: $ redhat-config-keyboard & Вам сразу же будет предложено ввести пароль суперпользователя, если только вы уже не запустили сеанс регистрации в качестве суперпользователя. Выполните прокрутку, выбирая из списка требуемый язык, затем щелкните ОК, чтобы сохранить произведенные изменения. Пример Так выглядит клиент redhat-config-keyboard (русская версия Red Hat Linux 9), используемый в сеансе X: V _e_l у/ у- ■ ■ ' , . _Х (_ "\ Выберите общесистемную раскладку клавиатуры. Норвежская Норвежская (latinl) Польская Португальская Румынская Русская Русская (ср1251) Русская (Microsoft) Русская (ml) Русская (ги2) Русская (win) L Г ^£>К Ы ] |
II. Команды 589 redhat-config-network конфигурирует ваш клиентский сетевой хост. Синтаксис redhat-config-network Вы можете запустить данную команду в окне терминала (xterm) сеанса X. Но можно также запустить redhat-config-network, выбрав из основного меню (Red Hat Linux 9) System Settings (Системные параметры) -> Network (Сеть). Вам сразу же будет предложено ввести пароль суперпользователя, если только вы уже не запустили сеанс регистрации в качестве суперпользователя. Если вы проинсталлировали Red Hat Linux на компьютере с сетевой платой, то после старта redhat-config-network возникнет экран, подобный представленному далее в примере. Щелкните на клавише DNS, чтобы сконфигурировать установки этой системы, имя хоста, маршрут поиска DNS. Щелкните на клавише Hosts (Узлы), а затем на кнопке ADD (Добавить) или Edit (Отредактировать), ч гобы создать или отредактировать элемент в вашем системном файле /etc/hosts, например, добавляя IP-адреса, имена хостов и их псевдонимы в своей сети. Вы также можете автоматически или вручную установить устройство Ethernet, щелкнув на клавише Devices (Устройства). Пример Используйте redhat-config-network, чтобы начать конфигурировать ваш клиентский сетевой хост. v --,..- _ - П X Файл Профиль Справка , @ # в е .Создать Изменить Скопировать Удалить ' Устройства '.Оборудование jQNS Узлы | Здесь вы можете настроить оборудование физически подключенное к компьютеру. Описание Тип Устройство ReaJTek RTL 8139 SMC EZ Ca Ethernet e№0 redhat-config-securitylevel создает сетевой заслон. Синтаксис redhat-config-securitylevel
590 II Команды До rex пор пока любой имеет доступ к вашей системе, физический или через есть, до тех пор информация, хранящаяся в сети, нодвергае1СЯ онасноаи. Чем больше доступа - тем выше угроза. Если ваша сеть подключена к Inlemet, опасения насчет гого, что кто-то проникнет в ваш компьютер, весьма реальны. Первое и самое главное на компьютере, подключенном к Internet, всегда использовать аппаратную или программную защитную систему, или брандмауэр. Наряду с клиентом lokkit на основе текстовой консоли в состав Red Hal Linux включено графическое клиентское программное обеспечение иоц названием redhat-config-securitylevel. позволяющее поддерживать конфш урацию брандмауэра. Используя redhat-config-securitylevel, ироше всего создать простой набор правил фильтрации сетевых пакетов, позволяющий принимать или отвергать поток пакетов TCP или UDP, проходящий через Ethernet-плату хоста или уполномоченное устройство, такое как ethO или рррО. Правила создаются на ходу и тут же включаются в работу. Вы можете запустить данную команду в окне терминала (xterm) сеанса X. Но можно также запустить redhat-config-securitylevel, выбрав из основного меню (Red Hat Linux 9) System Settings (Системные параметры) -^Security Level (Уровень безопасности). Вам сразу же будет предложено ввести пароль суперпользователя, если только вы уже не запустили сеанс регистрации в качестве суперпользователя, и затем возникнет окно графического клиента (см. далее пример). Вам предстоит определить уровень безопасности (см. Security Level:) из трех имеющихся: High (высокий), Medium (средний), No firewall (без брандмауэра). Далее придется указать, будете ли вы использовать принятые по умолчанию правила для брандмауэра (Use default firewall rules) или предпочитаете свои собственные (Customize), в последнем случае необходимо пометить доверительные устройства(Trusted devices:) и разрешенные входящие пакеты (Allow incoming:), например, запросы DHCP и/или входящие через SSH пакеты. vf-MJiifi Прт ер Используйте redhat-config- securitylevel, чтобы быстро сгенерировать прямо в памяти правила брандмауэра для Linux. Так выглядит основное окно: ш О С Please choose the security level for the system. Security Level: High (*) Use default firewall rules О Customize ID ethO Mlow incoming D wv (HTTP! D FTP □ <=SH □ DHLP D Mail <SM □ Tpliiel
II. Команды 591 redhat-config-services управляет запуском системных служб и устанавливает уровень их функционирования. Синтаксис redhat-config-services Вы можете применять графическую версию команды chkconfig под названием redhat-config-services. В окне терминала (xlerm) сеанса X наберите следующую команду: # redhat-config-services & Но можно также запустить redhat-config-services, выбрав из основного меню (Red Hat Linux 9) System Settings (Системные параметры) -^Server Settings (Настройка серверов) -^Services (Сервисы). Вам сразу же будет предложено ввести пароль суперпользователя, если только вы уже не запустили сеанс регистрации в качестве суперпользователя. Эта клиентская программа является графическим редактором уровней функционирования, пли выполнения. Используя клиента службы конфигурации, вы можете выбрать в меню Edit Runlevel текущий уровень, требуемую службу и затем щелкнуть на кнопках Start, Stop или Restart панели инструментов. Пример Вот как выглядит главное меню "Настройка служб" (русская версия Red Hat Linux 9): - В К (Сайл Действия Изменить уровень Справка о О % Запустить Остановить Перезапустить Текущий уровень эапуска:5 Редактируется уровень эапуска:5 ■-•■■•- Г£] Description И 9Pm Г This rims the hardware probe, and optionally 0 Iptables I configures changed hardware. □ irda H Isdn 0 keytable Status 0 netls I kndzii has run 0 network □ nfs 0 ntslock (Dntpd Для редактирования выбрана системная служба kud/u.
592 II. Команды reiserfsck пр«вер- : Linux файловую систему ReiserFS Синтаксис reiserfsck [-afV][—check|—fix-fixable|—rebuild-sb|—rebuild-tree| —clean-attributes][-j|—journal-device device] [—no-journal-available][-z|—adjust-file-size] [-S|—scan-whole-partition][-1|—logfile filename][-n|—nolog] [_q —quiet] device Команда reiserfsck осуществляет поиск на устройстве (обычно в разделе диска) файловой системы ReiserFS, вновь повторяет необходимые транзакции, а затем проверяет и иногда восстанавливает файловую систему. Опции —check Осуществляет проверку согласованности (непротиворечивости) файловой системы и сообщает (но не восстанавливает) о всех обнаруженных несоответствиях. Данная опция может применяться лишь на файловых системах, монтируемых в режиме "только для чтения". Работа reiserfsck с опцией —check может завершиться с кодом 0, что указывает на отсутствие повреждений, с кодом 1 - повреждение может быть "закреплено" с помощью — fix-fixable, с кодом 2 - требует —rebuild-tree. —fix-fixable Восстанавливает некоторые виды повреждений, не требующие перестройки полного дерева файловой системы, включая обнуление указателей поврежденных блоков данных, корректировку stsize и st_blocks для каталогов, удаление сбойных элементов каталога. —rebuild-sb Восстанавливает суперблок в разделе с файловой системой ReiserFS. —rebuild-tree Перестраивает полное дерево файловой системы с помощью узлов-листьев, найденных на данном устройстве. —clean-attributes Очищает зарезервированные поля пунктов Stat-Data. -j device, —journal-device device Снабжает именем устройства с текущим журналом файловой системы. Эта опция требуется, если журнал расположен на отдельном устройстве. -z, — adjust-file-size Предполагает удаление "дыр" в конце файла, корректируя размеры файлов, больших, чем смещение последнего обнаруженного байта. -1 filename, — \ogfi]e filename Заставляет помешать отчет о любых найденных повреждениях в указанный файл журнала вместо стандар того файла ошибок. -n, —nolog Запрещает сообщать о любых видах повреждений.
II. Команды 593 -q, -quiet Запрещает сообщать о ходе самою процесса. -а Печатает информацию о файловой системе и завершает пршрамму —no-journal-available Не открывает журнал. -S | —scan-vvhole-partition Строит дерево всех блоков устройства. -V, -f Выводи г информацию о версии программы и завершает ее выполнение. Программа rciserfsck имеет еще несколько довольно-таки опасных опций, неверные действия с которыми могуг привести к потере данных. Здесь эти опции не приведены. Пример Смонтируем файловую систему в режиме "только для чтения": # mount -о го /dev/loopO Rab2 f reiserfsck /dev/loopO < reiserfsck, 2002 > reiserfsprogs 3.6.4 *******************************************************************£********** ** If you are using the latest reiserfsprogs and it fails please email bug ** ** ** ***************************************************************************** Will read-only check consistency of the filesystem on /dev/loopO Will put log info to 'stdout' Do you want to run this program? [N/Yes](note need to type Yes if you do): Yes ttttttlttit reiserfsck —check started at Sat Oct 18 14:23:19 2003 tttitittiM Filesystem seems mounted read-only. Skipping journal replay. Checking internal tree..finished Comparing bitmaps.. finished Checking Semantic tree: finished No corruptions found There are on the filesystem: Leaves 1 Internal nodes 1 Directories 3 Other files 5 На сообщение программы Do you want to run this program? [N/Yes|(note need to type Yes if you do): следует ответит ь Yes. В протоколе произведенной проверки наиболее существенной является фраза No corruptions found, свидетельствующая об отсутствии повреждений.
594 II Команды reiserfstune выполняет настройку журнала файловой системы ReiserFS. Синтаксис reiserfstune [-£][-j|—journal-device file\[—no-journal-available] I—journal-new-device file][-s|—journal-new-size n] [~o\—journal-new-offset n][-tj—transaction-max-size n] [-uj—uuid uuitf][-1|—label label] device Команда reiserfstune позволяет изменить два параметра: размер журнала и максимальный размер транзакций (точнее сказать, максимальное количество блоков журнала на транзакцию), а также может перенести журнал в другое место на указанное устройство (обычно раздел диска). Старый журнал в зависимости от применяемых опций мог оставаться неиспользуемым или подлежал отключению. Что же касается переноса журнала на новое место, то вновь модифицированная после такой операции файловая система могла даже и не монтироваться без установки ядра 2.5 (или требовалась специальная заплата). Опции -j | —journal-device file Определяет имя блочного устройства, где располагается текущий журнал файловой системы. Эта опция гребуегся, если журнал уже существует на отдельном от основной системы устройстве. Если же не указать эту опцию, reiserfstune предполагает, что журнал находится на основном устройстве. —no-journal-available Разрешает программе reiserfstune продолжать работу, даже когда текущий блок устройства с журналом становится недоступным, скажем, из-за сбоя диска. --journal-new-device file Определяет имя блочного устройства, где будет располагаться новый журнал файловой системы. Если же не указать эту опцию, reiserfstune предполагает, что журнал остается тот же, что и раньше. -s | —journal-new-size и Определяет размер журнала в блоках. Когда журнал расположен на отдельном устройстве, по умолчанию его размер равен количеству блоков самого устройства. Когда журнал расположен на основном устройстве, по умолчанию его размер равен тому количеству блоков, что еще при создании файловой системы выделила команда mkreiserfs. Минимальный размер в обоих случаях равен 513. -о | —journal-new-offset и Определяет смещение (по умолчанию - нулевое), откуда начинается журнал, расположенный на отдельном устройстве. Эта опция не оказывает никакого влияния, когда журнал расположен на основном устройстве.
II. Команды -I | — liaiisaclion-max-size и Задает параметр, определяющий максимальное количество блоков журнала на транзакцию. Максимально возможное значение но умолчанию достигает 1024 и должно быть меньше половины размера всего журнала. -f | —force Вынуждает reiserfstune менять журнал файловой системы, что был создан ранее. Обычно reiserfstune отказывается менять ранее созданный журнал. Если задать эту опцию более одного раза, то будет отменен запрос по поводу согласия выполнять операцию. —make-journal-standard Резервирует на основном устройстве область под стандартный журнал размером 8193 блока. Как было сказано ранее, если ваша файловая система имела нестандартный журнал, то она не могла бы быть смонтирована ядром. Эту ситуацию можно было бы разрешить при условии наличия резервной области, если вы конвертируете стандартный журнал в нестандартный. Эту опцию следует указать, когда вы возвращаете журнал обратно, и даже без перемещения, если журнал уже размещен на основном устройстве. -и | —uuid uuid Устанавливает UUID данной файловой системы в указанное значение (см. команду uuidgen), состоящее из наборов шестиадцатеричных цифр, разделенных дефисами. -1 | -label label Устанавливает метку тома данной файловой системы; максимальная длина метки достигает 16 символов. Если задаваемая длина метки превосходит 16 символов, обрезает ее. Пример # reiserfstune /dev/loopO -journal-new-device ghgh -f < reiserfstune, 2002 > reiserfsprogs 3.6.4 reiserfstune: Current journal parameters: Device [0x0] Magic [0x692dll59] Size 8193 blocks (including 1 for journal header)(first block 18) Max transaction length 1024 blocks Max batch size 900 blocks Max commit age 30 reiserfstune: ATTENTIONl Filesystem with standard journal found. Continue (y/n): у В лом примере ghgh является файлом блочного устройства ч предназначается под журнал.
5% II. Команды renice .ет npnopi i апущенных про ессов. 14 Синтаксис renice priority [[-p] pid ][[-g] pgrp Ш-u] user—] Меняет планируемый приоритет одного или более запущенных процессов, устанавливая значение priority. Опции "ё Р8ГР Выбирает процессы с указанным идентификатором группы. -u user Выбирает процессы определенных пользователей. -р pid Выбирает процесс с определенным идентификатором. Действует по умолчанию. Аргументрп'ог/'Л' указывает приращение планируемого процесса. Обычно пользователи могут менять приоритеты лишь своих "собственных" процессов в отличие от суперпользователя, который может менять приоритеты любых процессов. Кроме того, обычные пользователи могут лишь постепенно увеличивать значение приращения в диапазоне от 0 до 20, что способствует снижению планируемого приоритета. В то время как суперпользователь может устанавливать любое значение приоритета. Пример t renice -5 -u misha 501: dd priority 1, new priority -5 t Старый приоритет (1) задания пользователя misha заменен на -5. repquota - суммирует квоты по файловой системе. Синтаксис repquota [-vug] filesystem— repquota [-avug] Распечатывает итоговые данные по дисковым услугам и квотам для указанной файловой системы filesystem. Для каждого пользователя печатается текущее количество его файлов и объем занимаемого дискового пространства (килобайты). Опции -а Информирует о всех квотируемых файловых системах из файла /etc/fstab. -v Сообщает обо всех квогах, даже если они не были задействованы.
II. Команды -g Сообщает о квотах групп. -и Сообщает о квотах пользователей (по умолчанию). Только суперпользователь может затребовать отображение любых квот помимо своих собственных. Пример # repquota -u User root daemon news uucp games gdm xfs nobody Sofia misha 1 — — — — — — — — — — / used 960664 8 5712 1048 0 4 8 4 288 5716 Block soft 0 0 0 0 0 0 0 0 1024 0 limits File limits hard grace used 0 0 0 0 0 0 0 0 4096 0 67017 3 232 16 39 1 3 1 56 610 soft 0 0 0 0 0 0 0 0 128 0 hard 0 0 0 0 0 0 0 0 256 0 TGSIZG устанавливает TERMCAP и терминальные установки, указывающие текущий размер окна xterm. Синтаксис resize [-u|-c][-s [row col]) Программа resize печатает команду оболочки для установки переменных окружения TERM и TERMCAP, указывающих текущий размер окна xterm, из которого запущена команда. Вывод команды resize удобно перенаправить в файл для последующего считывания. Опции -s [row col] Пример Будет генерировать команды оболочки Bourne, даже если текущая оболочка пользователя не является /bin/sh. Будет генерировать команды оболочки С, даже если текущая оболочка пользователя не является /bin/csh. Будет использовать управляющие последовательности консоли Sun вместо управляющих символов в стиле VTI00. Параметр row обозначает ряды, или строки, экрана, a col -столбцы. S resize>/tmp/foo $ . /tmp/foo $
598 II Команды restore восстанавливает файлы или файловые системы, ранее зарезервированные с помощью dump Синтаксис restore -С [-ckHvy][-b blocksize][-D filesystem][-l file][-s fileno] [-T directory] restore -i [-ChkmMNuvy ][-b blocksize)[-f file\[-s fileno][-T directory] restore -R [-ckHNuvy][-b blocksize][-f file][-s fileno][-T directory] restore -r [-CkHNuvy][-b blocksize][-1 tile][-s fileno][-1 directory] restore -t [-chkMNuvy][-b blocksize]]-! file]]-s fiieno][-T directory] [file...] restore -x [-ChkmMNuvy][-b blocksize][-f file][-s fileno][-T directory] I file...] Команда restore выполняет функции, обратные функциям команды dump: может быть произведено полное восстановление файловой системы с учетом также инкрементальных (частичных) копий. Единичные файлы и деревья каталогов могут быть восстановлены с полных или инкрементальных копий; восстановление может быть также произведено через сеть. Аргументы file и directory указывают восстанавливаемые файлы и каталоги. Опции -С Выполняет сравнение восстанавливаемого содержимого с файлами на диске. -i Предусматривает интерактивный режим восстановления файлов. После чтения с копии информации о восстанавливаемом каталоге программа restore предоставляет интерфейс в виде оболочки, позволяющей выбирать определенные файлы. Ниже перечислен набор команд, необходимых для этого: add [arg] текущий каталог или указываемый аргумент arg добавляется к списку извлекаемых файлов cd arg меняет текущий рабочий каталог на указываемый arg delete [arg] текущий каталог или указанный аргумент org убирается из списка восстанавливаемых файлов exlracl извлекаются все файлы списка; restore запросит том. который пользователь желаетсмон гировать; самый простой и быстрый способ восстановления файлов начат ь с последнего тома и последовательно идш к нервомч help печатает информацию о доступных ком.шчлх Is [arg] печатает содержимое гскушсгошипк.ианногоклм.'го- га aig: элсмеи гы, помеченные для иоссишонлення. выводятся с предшествующим символом *; ест vci.uiob-
II. Команды pwd quit setmodes verbose 599 лен флаг -v, будег также распечатан дескриптор каждого элемента печатает полный маршрут к текущему рабочему каталогу немедленно завершает работу restore, даже если список для восстановления не пустой все каталоги, добавленные к списку, сохраняют своих собственных владельцев, режимы и временные метки, эта информация не извлекается с текущей копии приказывает команде Is распечатать дескрипторы всех элементов, а также информацию об извлекаемых фай- -R Требует определенную магнитную ленту многотомного набора для повторного запуска полного восстановления, что обычно полезно в случае прерывания восстановления. -г Восстанавливает (перестраивает) файловую систему; выходная файловая система должна быть отработана с помощью mke2fs, смонтирована, перед восстановлением должен быть осуществлен переход в каталог пользователя; предполагается восстановление с нулевого уровня резервирования. Если копия нулевого уровня успешно восстановлена, с помощью флага -г можно восстановить любую необходимую инкрементальную копию. В каталоге root программа restore оставляет файл restoresymtable, передающий необходимую информацию между стадиями инкрементального восстановления. Этот файл будет уничтожен после проведения последнего инкрементального восстановления. -I Будут распечатаны имена аргументов file, если они обнаружены в копии. Если отсутствуют аргументы file, будет распечатан каталог, чье содержимое хранится в копии. -х С носителя информации будут считываться поименованные файлы. Если поименованный файл является каталогом, чье содержимое хранится в копии, и флаг -h не указан, будет осуществляться рекурсивное восстановление каталога. Владелец, время модификации и режимы будут по возможности восстановлены. Если отсутствуют аргументы, определяющие каталоги и файлы, будет восстановлен каталог root. -b blocksize Задает размер блока (килобайты). Если опция -Ь не задана, restore пытается определить размер блока динамически. -с Обычно restore пытается динамически определить формат файловой системы: новый или старый (до версии 4.4). Данный флаг отменяет эту попытку и разрешает чтение копии в старом формате. -D filesysiem Разрешает пользователю указывать имя файловой системы filesysiem. когда программа restore используется с опцией -с. -f file Параме1р/|/е определяет имя файла, содержащего восскшавчннаемую копню;///*? может быть специальным файлом устройства- MeWstO (лен-
600 II Команды точный накопитель) или /dcv/sda I (накопитель на жестком диске), - а также обычным файлом. Дефис, стоящий в качестве параметрау?/е, указывает на стандартный ввод. Если имя файла задано в формате host:file или userda}host:file, где host задает имя сетевого узла, a user - имя пользователя, то программа restore производит считывание поименованного файла на дистанционном узле с помощью rmt. -к Использует аутентификацию Kerberos для контакта с дистанционным ленточным сервером. -h Извлекает актуальный каталог вместо перечисленных файлов. -т Извлекает по значению дескриптора вместо имени файла. -М Задействует многотомные возможности, при этом имя файла, задаваемого вместе с флагом -f, рассматривается в виде префикса prefix. Производится восстановление с последовательности томов: prefixOOl, prefix002 и т.д. N Приказывает restore вместо восстановления просто распечатать имена файлов. -s fileno В случае многотомной копии выполняет чтение файла по указанному номеру fileno. Файлы нумеруются, начиная с 1. -Т directory Разрешает пользователю использовать каталог directory для хранения временных файлов. По умолчанию используется каталог /tmp. Эта опция полезна, если приходится восстанавливать файлы после загрузки с дискеты, где явно недостаточно места для проведения восстановления. -и Программа restore может генерировать предупреждающие сообщения, если восстанавливаемые файлы уже существуют в выходном каталоге. Флаг -и приказывает restore удалять старые компоненты до создания новых. -v Обычно restore выполняет свои функции "молча"; флаг -v предполагает документирование выполняемых действий. -у Не спрашивает пользователя, продолжать ли восстановление в случае ошибки ввода/вывода. Пытается пропустить сбойный блок (блоки) и продолжить восстановление. Программа restore может использовать следующие переменные окружения: ТАРЕ если опция -f не задана, использует для восстановления устройство, указанное этой переменной; переменная ТАРЕ может быть определена в следующих форматах: tapename, hosv.tapename или user@ftost.name TMPDIR определяет каталог, используемый вместо /tmp для временных файлов RMT определяет маршрут к программе rmt RS Н определяет команду вызова дистанционной оболочки (rsh, ssh), используемую при восс гаповлении по сети; если эта переменная не установлена, используется команда remd
II. Команды 601 Пример Программа restore вместе с mke2fs и dump может использоваться для модификации параметров - собственно размера и величины блока - файловой системы: t mke2fs /dev/sda2 t mount /dev/sda2 /mnt/filesystem t cd /mnt/filesystem t restore -rf /dev/stO t T6V выводит строки файла в обратном по Я1ке. Синтаксис rev [file] Копирует указанный файл7?/е на стандартный вывод, располагая содержимое каждой его строки в обратном порядке. Если никакой файл не указан, считывает стандартный ввод. richtext позволяет просматривать почтовое сообщение в формате richtext. Си. .сие richtext [-c][-f][-m][-n][-o][-p][-s c/iarset] [-t][fi2e] Программа richtext позволяет просматривать файлы richtext ("обогащенного", отформатированного текста) - обычно это сообщения электронной почты - на ASCII- терминалах (текстовых терминалах). В стандарте MIME такие сообщения определяются парой text/richtext. Используя возможности termcap (БД возможностей терминала), удается просматривать текст, содержащий фрагменты полужирного шрифта, курсива и подчеркиваний. При просмотре отрабатываются команды, выполняющие отступ, центрирование, а также осуществляющие выдержки (цитаты) и включающие электронную подпись. Словом, речь идет о несложном языке ссылок, который не следует путать с Microsoft's RTF. Рассматриваемый язык - часть стандарта MIME для мультимедийной почты в Internet. Программа richtext берет низкоуровневый richtext-вывод на свой стандартный ввод (а может считывать из файла/?/е), создает форматированный текст и направляет его на стандартный вывод, в качестве которого использует терминал. Изначально используется программой metamail. On ии Корректирует низкоуровневый файл формата richtext и записываег его скорректированную версию на стандартный вывод, но не выполняет никакого форматирования.
602 II Команды -f Указывает программе richtext на необходимое 1ь использовать коды управляющих последовательностей termcap для вывода полужирного текста и курсива, даже если программа вызывается в конвейере. -т Интерпретирует в японском и корейском языках символ < в качестве действительного символа "меньше чем", а не в качестве начала команды richtext. -п Просит программу richtext не вносить никаких корректировок в получаемый файл формата richtext. -о Использует двойную печать для отображения подчеркивания на таких терминалах, где это более пригодно. -р Использует в качестве пейджера программу, определяемую переменной окружения MMUSEPAGER и выдающую сообщение Press RETURN to go on (для продолжения нажмите RETURN) после каждого очередного заполнения экрана. -s charset Использует указанный набор символов, где параметр charset может принимать следующие значения: us-ascii iso-2022-jp iso-2022-kr -t Запрещает использовать коды управляющих последовательностей termcap для вывода полужирного текста и курсива, даже если файл формата richtext выводится на терминал. Л вместо этого использует для вывода такого текста символы * и _ (подчеркивание). rlog - печатает ин«о»мацию о RCS-файле. Синтаксис rlog [option] file.,. Печатает сообщения регистрации и другую информацию о RCS-файле file. Маршруты, сопоставляемые с суффиксом RCS, соответствуют RCS-файлам, все остальные - рабочим файлам. Имена назначаются по парам (см. ci). Команда rlog печатает следующую информацию о RCS-файлах: маршруты к RCS- файлу и рабочему файлу, head (заголовок последовательности), ветвь, используемая по умолчанию, список доступа, блокировки, символические имена, суффикс, общее количество версий, количество версий, выбранных для печати, текст описания. Для выбранных версий все перечисленное располагается поэлементно, в обратном хронологическом порядке для каждой ветви. Формат RCS-файла приведен в приложении V. Для каждой версии rlog печатает номер версии, автора, дату/время, состояние, количество добавленных/удаленных строк по отношению к предшествующей версии, индикатор блокирования, если оно выполнено, сообщение регистрации. По умоччпнию время выводится в формате UTC, который может бы гь перекрыт с помощью опции -ж.
II Команды 603 Без опций команда rlog печатаег полную информацию. Опции о.раничивают вывод команды rlog. ПЦИИ -R -h -delates -\[Iockers] -r[revisions] -sstates -v/[Iogins] -V -Vn -xsuffixes Игнорирует неблокированные RCS-файлы, что удобно в комбинации с опциями -h, -I, -R. Печатает только имя RCS-файла. Печатает только маршруты к RCS-файлу и рабочему файлу, head, ветвь, взятую по умолчанию, список доступа, индикатор блокирования, символические имена, суффикс. Печатает то же, что и для опции -h, а также текст описания. Не печатает символические имена. Печатает информацию о версиях на ветви, взятой по умолчанию; обычно это наивысшая ветвь на стволе (trunk). Печатает информацию о версиях, проверяемых в определенном параметром dales диапазоне дата/время. Для диапазонов в форме d\<d2 или dl>dl выбираются только версии, лежащие между dl и dl. Jlflz диапазона в форме d выбирается единственная самая последняя версия, датированная d или ранее. Строки дата/время в форме d, dl и dl указываются в свободном формате (см. со). Строки, содержащие символы "больше", "меньше", должны быть заключены в кавычки. Печатаег информацию только о блокированных версиях. Параметр lockers — это список имен зарегистрированных пользователей, разделенных запятой. Допускаются блокировки файлов только для пользователей, занесенных в список lockers. Печатает информацию лишь о версиях из списка revisions. Версии в этом списке разделяются запятыми. Диапазон в форме revl :rev2 подразумевает версии от revl до rev2 на той же самой ветви; \revl определяет версии от начала ветви до revl, включая revl; revl: - от версии revl и до конца ветви, содержащей revl. Печатает информацию о версиях, чьи индикаторы состояния соответствуют перечисленным в строке stales. Индикаторы состояния разделяются запятыми. Печатает информацию о версиях, проверяемых пользователями, чьи имена, разделенные запятыми, хранятся в списке logins. Если параметр logins отсутствует, предполагается имя зарегистрировавшегося пользователя. Печатает версию RCS. Эмулирует для RCS номер версии п, создавая сообщения регистрации (см. со). Чтобы охарактеризовать RCS-файлы, применяет суффиксы suffixes.
604 II Команды -zzone Указывает формат вывода даты, а также задает часовой пояс zone, принимаемый но умолчанию для параметра dale в опции -ddale. Параметр zone может быть пустым (по умолчанию), числовым смешением в формате UTC или же специальной строкой LT, определяющей локальное время. Если параметр zone пустой (по умолчанию), используется традиционный для системы RCS формат UTC без указания часового пояса и со слэшами, разделяющими части даты; в противном случае вывод да1ы производится в формате ISO 8601 с указанием часового пояса. Код завершения rlog равен нулю, если все операции были успешны. Примеры Если пользователь хочет получить список файлов, выбранных и заблокированных на данный момент времени, следует задействовать такую команду: ? rlog -L -R RCS/* RCS/prim39,v RCS/prim41,v RCS/prim42,v S Чтобы напечатать полную информацию о файлах, нужно запустить команду: $ rlog RCS/* RCS tile: RCS/prim32,v Working file: prim32 head: 1.1 branch: locks: strict access list: symbolic names: keyword substitution: kv total revisions: 1; selected revisions: 1 description: development revision 1.1 date: 2000/06/04 17:18:08; author: misha; state: Exp; Initial revision RCS file: RCS/prim39,v Working file: prim39 head: 1.3 branch: locks: strict misha: 1.3 access list: symbolic names: keyword substitution: kv total revisions: 3; selected revisions: 3 description: my file revision 1.3 locked by: misha; date: 2000/06/05 20:49:38; author: misha; Btate: Exp; lines: +2 -1 my new file after editing
II. Команды 605 revision 1.2 date: 2000/06/05 20:47:01; author: misha; state: Exp; lines- +2 my new file revision 1.1 date: 2000/06/05 20:42:33; author: misha; Initial revision state: Exp; MOCjin - разрешает пользователю зайти в дистанционную К систему. Синтаксис rlogin [-8EKLdx][-e cAar][-k reaim][-l username] host Запускает терминальный сеанс на дистанционном узле host, пытаясь использовать механизм авторизации Kerberos. Если узел не поддерживает Kerberos, используется стандартный (Berkeley) механизм авторизации. On ии -8 Использует 8-битный ввод информации. Если стоповый и стартовый символы дистанционной системы иные, чем AS и AQ, отбрасывает биты четности. -Е Не пытается распознавать управляющие символы. -К Отключает аутентификацию по Kerberos. -L Запускает дистанционный сеанс в режиме litout. -d Включает режим отладки сокетов TCP, используемых для подключения к дистанционному узлу. -е char Разрешает применять пользовательскую спецификацию управляющего символа, которая по умолчанию выглядит как ~. Спецификация управляющего символа может быть литералом или задаваться в форме \fiiin, где ппп - восьмеричное значение. -k realm Позволяет получи гь tickets (билеты) для диет анцнонного узла в области realm вместо области дистанционной системы, как это определено параметром krbrealmofliost. -1 username Позволяег зайти на дистанционную систему в качестве пользовался username. -х Устанавливает DFS-шифроианне для данных, передаваемых в сеансе rlogin, что несомненно усиливает безопасное^ передачи. При использовании rlojjin вес отдаваемые вами команды ньпнх'шяююя нл uickih- ционной системе. Сiрока п виде управляющего символа (по умолчанию ш.чьд.О, и
II. Команды которым следуег точка, разрывает связь с дисганционным умом; по умолчанию Ctrl+Y (AY) ириостанавливаег отправку порции информации, но разрешает принимав вывод дистанционного узла. ГГП удаляет файлы Синтаксис гш [option]...[file]... Удаляет каждый заданный файл file. При удалении файлов требует подтверждения пользователя в следующих случаях: Q если в качестве стандартного ввода определен терминал Q если файл нечитаемый (сбойная ситуация) Q не задана опция -f Q задана опция -i Если ответ не начинается с буквы у, или Y, файл пропускается. Опции -d, —directory Помечает для удаления каталоги с помощью системного вызова unlink вместо rmdir, не требуя, чтобы каталоги были пустыми. Другими словами, удаляет ссылку на каталог. Эта операция доступна только суперпользователю, после нее файлы в каталогах становятся "неприкаянными". Было бы разумным запустить fsck. -f, —force He требует подтверждения пользователя, игнорирует несуществующие файлы. Игнорирует любую предшествующую опцию -i. -i, —interactive Требует подтверждения перед удалением каждого файла.Если ответ не начинается с буквы у, или Y, файл пропускается, -г, -R, —recursive Рекурсивно удаляет содержимое каталогов. -v, --verbose Печатает перед удалением имя каждого файла, —help Печатает список опций и завершает программу. Команда rm опасна: можно удалить больше, чем необходимо, причем, безвозвратно. При удалении файла его индексный дескриптор добавляется к списку свободных дескрипторов, а его блоки данных - к списку свободных блоков. Существуют утилиты DOS, которые в такой ситуации восстанавливают случайно удаленные файлы. Но Linu\ многозадачная система, программы-демоны постоянно записывают информацию в журналы, обрабатывают сетевые соединения, принимают и фиксируют электронную поч гу и делают ряд других вещей, которые как бы проходят незаметно для пользователя. Поэтому освободившиеся блоки могут быть тут же задействованы, даже если в ciicie- ме работает всего лишь один пользователь. Следует быть особо осторожным при использовании метасимволов, любая опечатка может привести к тяжелым последствиям. К
И Команды 607 Пример $ rm -f *.gif $ Данная команда удалит все изображения текущего кагалога в формате gif. Но если вы случайно добавите лишний пробел, то все файлы текущего каталога будут безвозвратно потеряны. -f * .gif rmdir удаляет пустые каталоги. К ИН К 1С rmdir [option].. .directory Удаляет каталоги director)', если они пустые. Опции -ignore-fail-on-non-empty -р, —parents --verbose --help --version Пример Игнорирует каждое аварийное завершение из-за того, что каталог непустой. После удаления указанного каталога director)' пытается удалять каждый каталоговый компонент из полного маршрута. Т.е., удалив каталог /x/y/z, затем пытается удалить /х/у и /х. Комментирует каждый обрабатываемый каталог. Выводит список опций и завершает программу. Выводит информацию о версии программы и завершает ее. $ rmdir dos S rmmod выгру ет загружаемые мо ули. Синтаксис rmmod [-ars] module... Удаляет из ядра, если это возможно, загружаемые модули module в том порядке, в котором они перечислены в командной строке. Выгрузка производится, если модули не используются п насгояший момент и к ним не обращаются другие модули. Поддерживается выгрузка стека модулей: если удаляется главный модуль (нсршнна) стека, ю 1акая же судьба ожидает и всех остальных подчиненных ему модулей.
608 II. Команды Опции -а Удаляет все неиспользуемые модули с флагом autoclean (см. insmod). -г Пытается выполнить рекурсивное удаление модулей стека. -s Вместо терминала направляет весь вывод в syslog (системный журнал). riTlt программа, поддерживающая общение с дистанционным накопителем на магнитной ленте. Синтаксис rmt Программа rmt используется программами дистанционного копирования и восстановления через коммуникационные каналы. Программа rmt обычно запускается через вызов гехес или i and. Программа rmt получает указания на различные манипуляции с магнитными лентами, выполняет команды и в ответ создает индикаторы состояния. Все ответы обычно создаются в одном из двух ASCII-форматов; для успешно завершившихся команд ответ выглядит следующим образом: Алшл£ег\п Параметр number — это десятичное число. Для аварийно закончившихся команд ответ формируется по такому формату: Е error-n umber\nerror-niessa ge\n Здесь error-number — один из возможных номеров ошибок, описанных в intro, а error-message — соответствующая строка с информацией об ошибке, распечатываемая по вызову perror. Ниже перечислены команды, включенные в дистанционное соглашение: 0\device\nmode\r\ открывает указанное устройство device, используя заданный режим mode, представляющий десятичное число для открытия через вызов open; если устройство уже открыто, оно будет закрыто, а затем повторно открыто Cdevice\n закрывает в настоящий момент открытое устройство, собственно говоря, параметр device игнорируется L»7;ence\no//Se<\n производит операцию через вызов Iscek, передавая ему указанные параметры; ответ возвращает системный вызов Iseck V/сонлЛп записывает информацию на носитель открытого устройства, считывая через сет ь заданное счетчиком count количество байт и завершая аварийно выполнение, если преждевременно встречает EOF (конец файла); ответ возвращает системный вызов write
II. Команды 609 ЯсоииЛп считывает заданное счетчиком count количество байт с открытого файла устройства; если count превышает размер буфера данных (10 Кбайт), его размер усекается до размера буфера; rmt вызывает системный вызов read и получает отвег в формате АсоивЛп, если read завершился благополучно, или, в противном случае, в стандартном формате ошибочного сообщения; если операция чтения завершилась успешно, считанные данные пересылаются по сети. Синтаксис команд не допускает пробелов как между командами и их аргументами, так и между самими аргументами. rnews ри е сти через UUCP-подключение. интаксис rnews [-h host](-г remote][-P рогt][-v]]-и][-N][input] Считывает очередь сообщений, обычно обеспечиваемых через UUCP-подпитку, и пересылает их на локальный сервер InterNetNews (или на локальный узел или в место, определяемое переменной nnrpdposthost в файле inn.conf). Сообщение считывается с указанного файла input или со стандартного ввода, если имя файла не задано. Статьи Usenet, пересылаемые через UUCP, обычно соединяются в единый пакетный файл. Пакеты могут быть сжаты, что сокращает время пересылки. Если сообщение не начинается с символа # или восклицательного знака, то весь входной файл рассматривается как единая статья новостей. В противном случае первая считанная статья интерпретируется как пакетная команда. Если команда имеет вид #! rnews ппп. где ппп - число, тогда следующие ппп байт, начиная со следующей строки, собственно рассматриваются как статья новостей. Если команда выглядит как #! cunbatch. тогда остаток ввода подается с флагом -d программе compress для распаковки. Вывод этого конвейера считывается как входной файл программой rnews. Сжатый пакетный файл, начинающийся со строки #! cunbatch. содержит набор статей, разделенных строками типа #! rnews ппп. Если <RNE\VSPROGS in config.data> установлена в значение DO и команда не содержит других слов, тогда rnews пытается выполнить следующую программу: <pathbin in inn.conf>/bin/rnews.libexec. Если <RNEWS_SAVE_BAD in config.data> установлена в значение DO и у rnews возникли какие-либо проблемы со статьей (пропущенный заголовок и т.п.), копия статьи будет сохранена в каталоге <pathincoming in inn.confWbad. Опции -U Если сервер недоступен, накапливает сообщения во вновь созданном файле в каталоге <patharticles in inn.conf>. С помощью флага -U все накопленные сообщения могут быть одновременно пересланы на сервер, как только он вновь станет доступным и сможет регулярно вызываться через сгоп.
610 II Команды "N Обычно, если распаковка входного файла завершилась аварийно, он пе- ресохрлняе1ся для последующих попыток в <patharticles in irmconf> Флаг -N отменяет пересохранение, и rnews завершается с кодом 9 -г remote Пересылает ста!ьи не на сетевой узел, заданный по умолчанию, а иа поименованный дистанционный узел remote. -Р port Пересылает стат ьи на указанный порт port дистанционного узла. -v Выводит сообщения в стандартный файл ошибок, указывая имя входного файла, если оно известно, а также распечатывает несколько начальных символов входного файла. Ошибки всегда регистрируются через mews. -h host Если установлена переменная окружения <_ENV_UUCPHOST in config.data>, rnews зарегистрирует идентификатор сообщения Message- ID и узел host для каждой предназначенной серверу статьи. Команда mews не может обрабатывать статьи со встроенными в них символами \0. Rnmail отвечает по электронной почте на статьи в группах новостей Usenet. Синтаксис Rnmail destination_list Rnmail -h headerfile [oldarticle] Rnmail Rnmail -дружественный интерфейс для отправки ответов на статьи новостей. Вначале программа задает пользователю необходимые вопросы, затем предоставляет ему возможность ввести свое письмо, которое тут же будет отправлено по почте. Если в вашем исходном каталоге существует файл .signature (с электронной подписью), программе Rnmail добавит его к вашему сообщению после проведения редактирования. А если вы предпочитаете видеть свою подпись уже в процессе редактирования сообщения, переименуйте файл .signature в .mailsig, и он будет добавлен еще до начала редактирования. Однако следует учесть, что если в вашем исходном каталоге существуют оба файла, статья может оказаться подписанной дважды. Аргумен г destinatiotilist определяет список рассылки. Опции -h headerfile Второй формат команды Rnmail с этой опцией применяется тогда, когда производится вызов из upoi раммы trn. В этом случае возникает необходимость, используя параметр headerfile. поменять файл с заголовком, который trn передает Rnmail. В сообщение может быть включена предшествующая статья oldarticle па эту же тему.
II. Команды 611 Переменные окружения D0TD1R Определяв местоположение файлов, имена которых начинаются с точки (скрытые файлы), в том случае, если они расположены за пределами Bameixj исходного каталога. Предназначается для учетных счетов, совместно используемых более, чем одной особой. По умолчанию - SHOME. EDITOR Редактор для подготовки статей, если переменная VISUAL не определена. По умолчанию используется редактор, инсталлированный администратором службы новостей. Обычно это vi. НОМЕ Ваш исходный каталог; но умолчанию — SLOGD1R. LOGDIR Ваш исходный каталог, если переменная НОМЕ не определена. LOGNAME Ваше регистрационное имя, если переменная USER не определена. По умолчанию — это значение, полученное с помощью команды nhoami. MA1LRECORD Если определена, содержит имя файла, к которому будет добавлено законченное сообщение. По умолчанию сообщение не сохраняется. NEWSORG Или название вашей организации, или имя файла, содержащего это название. Если установлены обе переменные — NEWSORG и ORGANIZATION, - то первая перекрывает вторую. По умолчанию принимается название или имя, выбранное вашим администратором службы новостей. ORGANIZATION Или название вашей организации, или имя файла, содержащего это название. По умолчанию - любое выбранное вашим администратором службы новостей. Содержимое строки заголовка Reply-To: для включения в сообщение. По умолчанию строка заголовка не включается. Ваше регистрационное имя. По умолчанию - SLOGNAME. Редактор для подготовки сообщения. По умолчанию - SEDITOR. REPLYTO USER VISUAL Пример Набрав команду Rnraail с определенным значением destinationjist (список адресов), можно увидеть следующее: Ц misha@localhost.localdomain:/home/misha ' Title/Subject: Linux .Prepared file to include [none!: vwi Check spelling. Send, Abort, Edit, or List? Send [mishaQlocalhost misha]* I
612 II. Команды route отображает и манипулирует таблицей маршрутизации протокола IP. Синтаксис route [-CFvnee] route [-v][-A family] add [-net|-host] target [netmask №>][gw Gw] [metric W][mss И) [window lir][irtt T] [re ject] [mod] [dyn] [reinstate] [[dev]Jf] route [-v][-A family] del [-net |-host] target [gw Gw] [netmask Km] ] [metric «][[dev]If] route [-V][—version][-h][—help] Манипулирует таблицами ядра. Команда route изначально предназначалась для установки сгагических маршрутов к указанным узлам или сетям через интерфейсы, кеторые были до того сконфигурированы с помощью программы ifconfig. Совместно с опцией add или del команда route модифицирует таблицы маршрутизации, без згих опций - отображает текущее содержимое этих таблиц. Опции -A family 11спользует указанное семейство адресов. Список семейств адресов можно получить с помощью route —help. По умолчанию принимается inet. -F Работаете таблицей маршрутизации ядра под названием FIB (Forwarding Information Base- базовая информация по переназначениям). Опция установлена но умолчанию. Поддержка IP-переназначений должна быть встроена в ядро. Можно использовать команду cat /proc/sys/net/ipv4/ip_for\vard, чтобы определить, установлена ли такая поддержка. Если будет выведено значение, равное 1, поддержка установлена, значение 0 указывает, что поддержка IP-переназначений отключена. -С Работает с кэшем маршрутизации ядра. -v Комментирует выбранную операцию. -п Показывает адреса, не пытаясь определять символические имена узлов. -е Для отображения таблицы маршрутизации использует формат команды netstat. -ее Создает длинную строку, включающую все параметры из таблицы марш- рушзации. del Удаляет маршрут. add Добавляет новый маршрут. large/ Указывает дистанционную сеть или узел, куда прокладывается маршрут, это собственно и есть требуемая мишень. Можно определить IP-адреса в десятично-точечной нотации или в виде имени узла или сети.
II. Команды 613 -net -host netmask Ми gvv Gw metric M mss M Прокладывает маршрут к се i и. Прокладывает маршрут к узлу. При добавлении се гевого маршрута использует указанную сетевую маску. Направляет паке гы через заданный шлюз. Предварительно следует проложить статический маршрут к указанному шлюзу. Устанавливает поле метрики габлицы маршрутизации в значение М. Это иоле используется демонами маршрутизации. Устанавливает MSS (Maximum Segment Size - максимальный размер сегмента) TCP, используемого для подключения через этот маршрут, в значение М (байты). По умолчанию берется MTU (размер пакета) устройства за вычетом размеров заголовков. Эта установка используется для того, чтобы направлять на ту сторону TCP-пакеты меньшего размера. Для подключения через маршрут устанавливает размер окна TCP в W6afrr, что обычно используется для сетей АХ.25. Устанавливает начальное значение irtt в / миллисекунд (1—12000). Обычно эта опция только используется для сетей АХ.25. По умолчанию используется 300 мс. Ядро использует эту опцию, чтобы подобрать, не дожидаясь ответа, наилучшие параметры протокола TCP. Инсталлирует блокирование маршрута, это, к примеру, используется перед установкой маршрута, заданного по умолчанию. Данная опция не пригодна для брандмауэров. mod, dyn, reinstate Устанавливает динамический, или модифицируемый, маршрут. Эти опции служат лишь для диагностических целей (для демонов маршрутизации), dev If Принудительно связывает маршрут с указанным устройством, ибо в противном случае попытается определить это устройство самостоятельно. В большинстве случаев этой опцией пользоваться не приходится. Если dev /^последняя опция в командной строке, слово dev может быть опущено. Вывод таблицы маршрутизации организован в виде следующих столбцов: Destination мишень, к которой прокладывается маршрут: сеть или узел адрес шлюза или *, если шлюз не установлен сетевая маска: 255.255.255.255 для дистанционного узла и 0.0.0.0 для маршрута, взятого по умолчанию допускаются следующие флаги: U маршрут активен Н маршрут проложен к узлу G используется шлюз window W irtt/ reject Gateway Genmask Flags
614 II. Команды R маршрут для динамической маршрутизации D динамически инсталлирован демоном или переназначен (динамическая маршрутизация) М модифицирован демоном маршрутизации или переназначен (маршрут изменен) Metric обычно не используется текущими ядрами, но может понадобиться демонам маршрутизации Ret не используется в ядрах Linux Use количество требований на заданный маршрут: сколько раз использовался данный элемент таблицы маршрутизации Пасе определяет интерфейс, через который проходит маршрут При ер Всегда можно включить или отключить поддержку IP-переназначений с помощью простых команд: I echo l>/proc/sys/net/ipv4/ip_forward i t echo 0>/proc/sys/net/ipv4/ip_forward t Отобразить ваш сетевой маршрут и взятый по умолчанию шлюз из таблицы маршрутизации ядра можно с помощью следующей команды: # route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 205.168.60.48 0.0.0.0 255.255.255.240 U 0 0 8 ethO 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 4 lo 0.0.0.0 205.168.60.49 0.0.0.0 UG 0 0 12 ethO < При этом маршрут по умолчанию к сети 205.168.60.48 с маской 255.255.255.240 через интерфейс ethO может быть проложен с помощью следующей команды: route add -net 205.168.60.48 Предполагается, что интерфейс ethO уже определен с помощью ifconfig. Программа route сама просматривает список всех активных интерфейсов и путем сравнения IP- адресов находит подходящий. Ч гобы установить шлюз, используемый по умолчанию, с адресом 205.168.60.49, следует выполнить такую команду: route add default gw 205.168.60.49 ethO 0.0.0.0 — одна из двух специальных сетей класса А, эта сеть резервируется и ис- иользуе1Ся для указания маршрута по умолчанию. 127.0.0.0 - сеть обратной петли, при этом 127.0.0.1 адрес |Р-ишсрфейса обратной петли. Этот адрес обычно используется для тестирования ceicBoro программного обеспечения без физической сети.
II. Команды 615 rpC.mOUntCl демон монтирова • Г S. С . и rpc.mountd [option] Программа rpc.mountd воплощает протокол монтирования NFS. Без нее был бы невозможен экспорт файловых систем; под этим термином подразумевается возможность сделать файловые системы доступными для клиентов NFS. Когда <л клиента NFS поступает запрос на мон гирование конкретной файловой системы, программа проверяет список в настоящее время экспортируемых файловых систем. И если клиент уполномочен монтировать конкретную файловую систему, ему будет предоставлена гакая услуга. Обычно в файлах /etc/exports перечислены файловые системы и те клиенты, которым они могут быть доступны. Команда exportfs делает информацию об экспорте файловых систем доступной модулю ядра сервера NFS и демону rpc.mountd. Обычно при загрузке системы автоматически выполняется команда exportfs -а. Для каждого запроса на монтирование, поступившего от клиента NFS, демон rpc.mountd создает временный элемент в файле /var/state/nfs/rmtab, который будет удален при поступлении запроса на демонтирование. Опции -N, — no-nfs-version Указывает, что rpc.mountd не настаивает на определенных версиях NFS. Текущая версия NFS (ядро 2.2 и выше) поддерживает NFS версий 2 и 3. Но если модуль ядра NFS компилировался без поддержки NFSv3, то демон rpc.mountd должен быть вызван с опцией —no-nfs-vcrsion 3. -v, —version Печатает информацию о текущей версии программы и завершает ее. rpc.nfsd - демон системы \IF . Синтаксис rpc.nfsd [-p port] nproc Чтобы сделать каталоги некоторого сетевого узла доступными через NFS ([Network File System - Сетевую Файловую Систему) для других сетевых компьютеров, необходимо запустить на таком узле два основных демона NFS - nfsd и mountd. Подобно другим программам, основанным на RPC (Remote Procedure Call - дистанционный вызов процедур), эти демоны не управляются inetd, а запускаются при начальной загр\з- ке системы и регистрируют себя с помощью специального чемона portmappcr. который выполняет роль диспетчера сетевых портов для всех серверов RPC. работающи\ на данном компьютере. В операционной системе Linux демон portmappcr называется rpc.portmap. он расползается в кагалоге /usr/sbin и запускается из сценария rcinoU.
И Команды rpc.nlsd преде мвляет час!ь пользовательского уровня службы NFS Ее главные функции обеспечиваются модулем ядра nfsd.O. Если кто-то обращается к файлу через NFS, ядро операционной системы на машине-сервере обращается к демону NFS - rpc.nfsd. При этом используется интерфейс RPC. В качестве параметров серверу передаются имя и дескриптор файла, к которому идет обращение, а также идентификаторы пользователя и группы. Чтобы предотвратить несанкционированный доступ к файлам, идентификаторы пользователя и группы должны быть одинаковыми на машине-сервере и машине-клиенте. Часто для повышения быстродействия на стороне сервера работает одновременно несколько демонов nfsd. Опции -р port Указывает порт для прослушивания запросов к NFS; по умолчанию прослушивается порт 2049. пргос Указывает количество запускаемых копий сервера NFS; no умолчанию стартует один сервер. Хотя для повышения производительности может быть запущено несколько серверов. Оптимальный выбор помогает осуществить программа nfsstat. Пример t rpc.nfsd 4 * Запустили четыре копии сервера NFS. Г|JIII - инсталлирует и управляет пакетами программного обеспечения. Синтаксис rpm [option—] раскадепате RPM (Red Hat Package Manager- менеджер пакетов Red Hat Linux) является одной из наиболее известных систем управления программными пакетами в мире Linux. Команда rpm использует систему RPM, чтобы инсталлировать, удалять, обновлять, проверять и строить архивы программного обеспечения, известные как файлы .rpm. Эти архивы, или пакеты, содержат идентификацию, контрольные суммы и архив программного обеспечения в исходном или двоичном виде. Пакет .rpm также содержит некоторую дополнительную информацию, а именно: наименование, версию, базовое описание; может включать прединсталляционные и постинсталляционные сценарии, применяемые для инсталляции, удаления и обновления. В базе данных RPM. инсталлированной на вашем компьютере, отслеживается, какая версия какого пакета установлена. RPM использует системный каталог /var/lib/rpm для хранения файлов (текущие БД), содержащих информацию о программном обеспечении, инсталлированном на вашей системе.
II. Команды 617 Первичная БД инсталлированного npoi раммного обеспечения содержи 1Ся в файле Packages. Вы можете использовагь команду rpm или графические клиенты Red Hal для выполнения одной из пяти базовых задач: • инсталляция нового программного обеспечения • вычеркивание или удаление устаревших или ненужных паке гов • обновление установленного пакета программного обеспечения • получение по запросу информации о пакете • проверка инсталляции или целостности программного пакета Команда rpm имеет десятки различных опций командной строки, но ее административные функции группируются в соответствии с упомянутыми задачами. Далее перечислены пять основных опций вместе с дополнительными опциями, сочетающимися с этими основными. Основные опции -i Инсталлирует выбранный(е) пакет(ы) packagename. А вот некоторые полезные опции к этой основной: —excludedocs не инсталлирует документацию, экономя пространство —replacepkgs заменяет данный пакет его новой копией --force игнорирует все предупреждения и инсталлирует в любом случае —noscripts не выполняег пред- или постинсталляционных сценарии —nodeps игнорирует любые зависимости —foot path устанавливает альтернативный корневой каталог как path -е Вычеркивает (удаляет) выбранный(е) пакет(ы). А это распространенная полезная опция к этой основной: —nodeps игнорирует любые зависимости -U Удаляет текущий пакет, а затем инсталлирует программное обеспечение с содержимым выбранного пакета(ов), оставляя существующие файлы конфигурации. К опции -I) в случае необходимости добавляются те же опции, что и к -i, и еше одна: —oldpackage разрешает возврат к более старой версии пакета -q Запрашивает информацию о пакетах. А вот некоторые полезные опции к этой основной: _р file сообщает всю информацию о пакете file -fjile сообщает, какой пакег владеет данным файлом —whatprovides x определяет, какими пакетами снабжает.т _ j суммирует информацию о данном пакете
618 II. Команды -1 перечисляет файлы данного пакета --scripts отображает содержимое любого и) инсталлируемых, деинсталлируемых или проверяемых сценариев —provides отображает прелоешвляемые пакетом возможно- сш --requires отображает требуемые пакетом возможности -V Проверяет инсталлированные или выбранные пакеты по БД RPM. А вот полезная опция к -V: а проверяет все инсталлированные пакеты Пример Наиболее часто встречающийся вариант применения команды rpm - инсталляция программного обеспечения: # rpm -ivh pine-4.44-7.i386.rpm Preparing ####ttfttit#t«titt#tttt [100%] l:pine Htttftftttltfttittfttt [100%] Опции -v и -h обеспечивают более подробным выводом и отображают ход процесса инсталляции. Краткое содержимое инсталлированного пакета можно затем получить с помощью опций -q и -i. rSrl - запускает на дистанционной системе оболочку К для выполнения казанной команды. интаксис rsh [ -Kdnx ] [ -k realm] [ -1 username] host [ command] rsh копирует и передает свой стандартный ввод дистанционной команде command для выполнения на узле host, затем копирует стандартный вывод дистанционной команды на свой стандартный вывод. Стандартный файл ошибок дистанционной команды передается в стандартный файл ошибок rsh. Опции -К О гключает аутентификацию по Kerberos. -d Включает режим отладки сокетов TCP, используемых для подключения к дистанционному узлу. -k realm Позволяет получить tickets (билеты) для дистанционного узла в области realm вместо области дистанционной системы, как это определено параметром krb_rcalmofIiost. -1 username Позволяет зай i и на дистанционную систему в качестве пользователя username. Используется аутентификация по Kerberos it авторизация, как для rlof>in.
II. Команды 619 -" ПеРенапРавляетстандартнынввод(С1ерминала)наустройс-|во/0еу/пи1| (псевдоустройство, полезное при поиске ошибок). "х Устанавливает DES-шифрование для всех пересылаемых данных, чго замедляет получение ответа от дистанционного узла. Если никакая команда command не указана в командной строке, вы просто зарегистрируетесь на дистанционном узле. rstart простейшая реализация клиента Remote Start (дистанционный старт). Синтаксис rstart [-с context] [-g] [-1 username] [-v] hostname command arg Использует rsh для выполнения команды command с аргументом org на дистанционной системе hostname. Опции -с context Параметр context описывает общее окружение, в котором программа будет запущена. По умолчанию устанавливается значение X (предполагается запуск Х-программ из обычно инсталлированной системы сетевого узла). -g Интегрирует command как общую команду протокола rsh. Это позволяет вызвать общие приложения, не будучи подробно осведомленным, как они собственно вызываются на дистанционной системе. -1 username Запустит команду command под указанным именем пользователя username. -v Подробно комментирует все операции. TSynC - си хронизирует файлы. интаксис rsync [option]. rsync [option]. rsync [option]. rsync [option]. rsync [option], rsync [option]. sre [sre] [user$]hostidest [vser%]hostisrc dest sre [ sre]... dest [userQ]host::sre [dest] .. sre [sre]... [usert]host::dest .. rsync://| user$]host[:port]/sre [dest] Если команда scp строится на основе гер, дополняя ее сретс гвами шифрования, аутентификации с открытым ключом и сжатия данных, го команда rsync расширяет возможности команды гер благодаря пошаговому копированию файлов. Так, егш копируемый файл уже существует в месте назначения, комаид.1 rs\ nc сравнивает но час-
620 II Команды тям обе копии файла и передает лишь измененные его части. Если учес1ь, чго в крупных файлах изменяюгся лишь сравнительно небольшие участ ки, го команда rsync может сэкономить до 99% времени, затрачиваемого на копирование всего файла, что немаловажно для сетей с медленными линиями связи. Команды гср и scp копируют отдельные файлы и каталоги, явно указываемые в командной строке, тогда как rsync больше всего подходит для распространения больших совокупностей файлов, в том числе хранилищ программного обеспечения или файлов конфигурации системы. Базовые опции -h, —help Печатает краткую страницу помощи, описывающую доступные опции. —version Печатает версию rsync и завершает ее. -v, -vv, -VW Определяет уровень информации, получаемой во время трансфера файлов. Один флажок сообщает информацию о переносимых файлах и предоставляет итоги в конце. Двойной флаг знакомит с информацией о пропущенных файлах. Тройной флаг используется при отладке rsync. -q, —quiet Сокращает количество информации, распечатываемой при рассылке файлов. Этот флаг полезен, если rsync вызывается из сгоп. -с, —checksum Заставляет отправителя перед отправкой вычислять контрольные суммы всех файлов по 128-битному алгоритму MD4. Контрольные суммы файлов затем сверяются у получателя. -a, —archive Переходит в архивный режим; действует подобно tar и рекурсивно копирует каталоги, сохраняя права владельца и символические ссылки. -г, —recursive Рекурсивно копирует каталоги. Если эта опция не задана, вообще не копирует каталоги. -b, —backup Ранее существующие дистанционные файлы переименовываются при пересылке файлов, приобретая расширение ~. Вы можете управлять этим расширением с помощью опции —suffix. —backup-dir=<A> В комбинации с опцией —backup сохраняет все резервные копии в указанном каталоге, что полезно при инкрементальном копировании. suffix=sujj/ix Меняет принятый по умолчанию суффикс (~), используемый с опцией-Ь. -u, —update Пропускает любые файлы, если для них существует дистанционный аналог с более "свежей" датой, чем исходный файл. -1, —links Копирует символические ссылки именно как таковые. -L, —copy-links Вместо символической ссылки копирует сам файл, на который она ука- зываег. -Н, —hard-links Создает такие же жесткие ссылки на дистанционной системе, как и на локальной. Без этой опции жесткие ссылки рассматриваются как обычные файлы.
II. Команды 621 -W, -whole-file He использует обычный инкрементальный алгоритм (копирование лишь измененных частей файла), а отсылает полный файл. -р, -perms Устанавливает дистанционные полномочия на файл такими же, как и локальные. -о, —owner Устанавливает для дистанционного файла такого же владельца, как и у локального. Только суперпользователь может устанавливать права владения файлом. -D, —devices Передает информацию о символьных и блочных устройствах на дистанционную систему, чтобы там пересоздать эти устройства. Опция доступна только суперпользователю. -п, —dry-run Устанавливает режим "сухого прогона", фактически не пересылая файлы, а лишь сообщает о действиях, которые могли бы иметь место. -х, —one-file-system Никогда не пересекает границ файловых систем. -existing He создает при пересылке новых файлов, а лишь обновляет те, что уже существуют. —ignore-existing Не выполняет обновлений файлов, что уже существуют по месту назначения. —max-delete=m«w Ограничивает количество удаляемых файлов и каталогов числом пит. --delete Удаляет любые файлы на принимающей стороне, которые отсутствуют на отправляющей стороне. -В, — block-size=Wocfa/ze Управляет размером блока, используемого в алгоритме rsync. -е, -rsh=command Выбирает альтернативную дистанционную оболочку при соединении локального и дистанционного хостов. По умолчанию используется rsh. хотя с точки зрения безопасности системы стоит предпочесть ssh. —rsync-path=pofft Указывает команде геупсдля копирования полный маршрут на дистанционной машине. -Т, — lemp-dir=cftr Использует dir в качестве в дальнейшем удаляемого каталога при создании временных копий передаваемых файлов. -z, -compress Сжимаег информацию файлов, передаваемых на дистанционные машины, используя тот же метод компрессии, что и g/.ip. —daemon Запускает rsync в режиме демона. А демон может получать iocivii, используя синтаксис hostv.module или tsyncJ/host/imiiliile'. Кслн стандартный ввод является сокстом, rsync предполагает, что может быть
622 II Команды запущена через inettl. в противном случае она отсоединяется от текущего терминала и превращается в фонового демона. Демон на каждом подключении клиента считывает файл конфшурации по имени /etc/ rsvncd.coiif и отвечает на запросы. Примеры S rsync -avz -е ssh /home/sofia/doc/ server-my:/home/sofia/doc building file list done ./ doc-1.3.tar ./ wrote 45907 bytes read 32 bytes 8445.23 bytes/sec Был переслан только один файл doc-1.3.tar, другие файлы уже существовали на server-my и соответствовали файлам клиента, поэтому и не были переданы. TUP - отображает итоговое состояние системы, состоящей из одного или более узлов локальной сети. Синтаксис rup [-dhlt][Aost...] В листинг программы rup включается текущее время, время функционирования системы, загрузка, которая определяется количеством заданий в очереди заданий, загружаемых через 1.5 и 15 минут. Опции -d Сообщает локальное время для каждого узла host, что полезно для синхронизации времени в сети. -h Сортирует содержимое листинга в алфавитном порядке по именам узлов. -1 Сортирует по загрузке. -t Сортирует по времени функционирования. Чтобы эта команда работала, на дистанционном узле должен быть запущен демон rpc.rstatd, который возвращает статистику по производительности, извлекаемую из ядра. Именно эту статистику и применяет команда rup. Команда rup использует протокол RPC, определенный в /urs/includc/rpcsvc/rstat.x. rUptllTlG - отоб ажает состояние машин локальной сети. К Синтаксис ruptime [-alrtu]
II. Команды 623 Программа ruptime выдает сгроку состояния, подобную гой, что создает программа uptime, для каждой машины локальной сети. Состояние узлов локальной сети определяется с помощью широковещательных пакетов, рассылаемых ежеминутно на каждую машину. Те машины, от которых не было получено информации об их состоянии в течение 11 минут, считаются неработающими. On ии -а Учитывает даже пользователей, бездействующих час и более -1 Сортирует по загрузке. -г Выполняет сортировку в обратном порядке. -t Сортирует по времени функционирования. -и Сортирует по количеству пользователей. По умолчанию листинг программы сортируется по именам узлов. rusers - выводит список пользователей, зарегистрированных на машинах локальной сети. Синтаксис rusers [-al][Aost ] Команда rusers создает вывод, подобный тому, что создает who, но только для отдельных узлов host или всех машин локальной сети. Опции -а Выводит список всех машин сети, даже если на некоторых из них не зарегистрированы пользователи. -1 Выводит листинг длинного формата: имя пользователя и имя узла, терминал, за которым зарегистрировался пользователь, дата и время регистрации, время работы в системе и дистанционный узел, с которого зарегистрировался пользователь. Для диагностики на дистанционных узлах должна быть обязательно запушена программа portmap (см. rpc.nfsd). rWhO - показывает, кто зарегистрировался на машинах К. локальной сети. Синтаксис rwho [ -а ] Создает вывод подобный тому, что генерирует команда who. Если какая-ниб\ и, машина не отвечает свыше 11 минут, предполагает, чго она недоступна. Если время бездейсгвия пользователей достигает 1 минуты и более, начинает фиксировав его
624 II Команды Если время неактивности пользователей достигает 1 часа или более, исключает их из своего вывода. Опции sal Сохраняет в своем списке даже тех пользователей, чье время неактивности достигает 1 часа или более. накапливает и хранит двоичные данные в файле учетных записей ежедневной жизнедеятельности системы. Синтаксис /usr/lib/sa/sal [interval count] Команда sal — это вариант команды sadc в виде сценария оболочки, и поэтому она поддерживает все флаги и параметры sadc. Команда sal записывает учетную запись указанное параметром count число раз в заданном интервале interval, измеряемом в секундах, в файл /var/log/sa/sarfrf, где М указывает текущий день месяца. Обычно автоматически запускается командой сгоп (см. пример в описании команды сгоп). sa2 записывает ежедневный отчет о жизнедеятельности системы. Синтаксис /usr/lib/sa/sa2 Команда sa2 - это вариант команды sar в виде сценария оболочки и поэтому поддерживает все флаги и параметры sar. Данная команда записывает ежедневный отчет в файл /var/log/sa/sarrf</, где dd указывает текущий день. Обычно автоматически запускается командой сгоп (см. пример в описании команды сгоп). sadc конечный инте^оеис к команде sar. Синтаксис /usr/lib/sa/sadc [-1][-V][-Х pid][-Х pid][interval [count]][outfile] Команда sadc выбирает системную информацию указанное параметром count число раз в заданном интервале interval, измеряемом в секундах, и записывает в двоичном формате в файл outfile или в файл /var/log/sa/sarfrf, если вместо имени файла стоит дефис. Если параметр count не задан, постоянно пишет в файл. Опции -I Ведет статистику всех системных прерываний, хотя по умолчанию сообщает лишь о количестве прерываний
II. Команды 625 _v Печатает информацию о версии программы и сообщение об ее использовании, а затем завершаег sadc. -xpid Предоставляет информацию о процессе, идентификатором которого является pid. -X pid Предоставляет информацию о дочерних процессах того процесса, идентификатором которого являегся pid. sar накапливает, сообщает и сохраняет информацию о «еятельности системы. Синтаксис sar [-AH-b][-B][-c][-i interval] [-r][-R][-u][-v][-V][-w)[-Wl [-у] [-П {DEV EDEV j SOCK | FULL)][-x { pid j SELF | SUM | ALL}] [-X {pid SELF I ALL}][-I {Irq | SUM | PROC | ALL| XALL) ] [-U {cpu ALL}][-o [filename] | -f [filename]] [-S [hhzmmzss]] [-e [hhznunzss]][ interval [count]] Учетная система основывается на значениях счетчиков и записывает содержащуюся в них информацию через указанное число секунд (interval). Если параметр interval равен 0, sar отображает среднестатистические показатели за период, прошедший с начала загрузки. Желательно запускать sar как фоновый процесс. Эта команда информирует лишь о локальной деятельности. Опции -А Эта опция эквивалентна заданию таких опций: -bBcrRiwvWy -I SUM -I PROC -n FULL -U ALL. -b Информирует об операциях ввода/вывода и сообщает о скорости передачи информации. Выводит следующие величины: tps общее число передач в секунду на физический диск; многочисленные логические запросы могут объединяться в один запрос дисковой операции ввода/вывода rtps общее число запросов за секунду на чтение физического диска wtps общее число запросов за секунду на операции записи на физический диск bread/s общее количество данных (блоки за секунду), прочитанных с устройс гва bwrtn/s общее количество данных (блоки за секунду), записанных на ус тройство. -В Сообщает страничную статистику. Выводи г следующие величины: pgpgin/s общее число ст ртищ, счи гываемых с диска за секунд} pgpgout/s общее число страниц, записываемых на диск за сек\ иду
626 II Команды -с Создает отчет о созданных процессах: proc/s общее количество процессов, созданных за секунду. -е hh:mm:ss Устанавливает время завершения отчета. По умолчанию - 18:00:00. Время может быть задано в 24-часовом формате. Эта опция используется лишь тогда, когда информация считывается или записывается в файл (опция-Гили-о). -f filename Извлекает записи из файла по имени filename, ранее созданного с помощью опции -о. По умолчанию параметру;/еий/ие - это текущий файл с информацией за день, /var/Iog/sa/sadd. -i interval Старается выбирать записи данных через интервал (в секундах), наиболее близкий по значению к параметру interval. -I irq\ SUM|PROC|ALL|XALL Помещает отчет о заданном прерывании irq. Прочие ключевые слова указывают следующее: SUM общее число прерываний, получаемых за секунду PROC число прерываний за секунду, как каждый процессор их отображает ALL статистика по первым шестнадцати прерываниям XALL статистика по всем прерываниям -n DEV|EDEV|SOCK|FULL Предоставляет сетевую статистику. С ключевым словом DEV выводит статистику о сетевых устройствах и предоставляет такие величины: IFACE имя сетевого интерфейса, от которого собирается статистика rxpck/s общее число пакетов, полученных за секунду txpck/s общее число пакетов, переданных за секунду rxbyt/s общее число байт, полученных за секунду txbyt/s общее число байт, переданных за секунду rxcmp/s число сжатых пакетов, полученных за секунду txcmp/s число сжатых пакетов, переданных за секунду rxmcst/s число групповых (многоадресных) пакетов, полученных за секунду. С ключевым словом EDEV выводит статистику о сбоях (ошибках) сетевых устройств: IFACE имя сетевого интерфейса, от которого собирается статистика rxerr/s общее количество "плохих" пакетов, полученных за сек\ н- ДУ txerr/s общее количество ошибок, возникших за секунду, при передаче пакетов
II. Команды 627 coll/s число коллизий, возникших за секунду, при передачи пакетов rxdrop/s число пакетов, полученных за секунду и усеченных из-за нехватки места в буферах Linux lxdrop/s число пакетов, отравленных за секунду и усеченных из-за нехватки места в буферах Linux txcarr/s число ошибок пересылки, случившихся за секунду, при передаче пакетов rxfram/s число ошибок настройки кадров, случившихся за секунду, при получении пакетов rxfifo/s число ошибок FIFO, случившихся за секунду, при получении пакетов txfifo/s число ошибок FIFO, случившихся за секунду, при отправке пакетов С ключевым словом SOCK печатает статистику о сокетах: totsck обшее число используемых сокетов tcpsck число сокетов TCP, используемых в настоящий момент hi-tcpsck максимальное число одновременно открытых сокетов TCP udpsck число сокетов UDP, используемых в настоящий момент hi-udpsck максимальное число одновременно открытых сокетов UDP ravvsck число низкоуровневых сокетов (RAW), используемых в настоящий момент hi-rawsck максимальное число одновременно открытых сокетов RAW Ключевое слово FULL эквивалентно указанию всех вышеперечисленных ключевых слов. -г Предоставляет статистику об использовании памяти (обычно килобайты или проценты, если ключевое слово начинается с %) и области своп- пинга (подкачки, или виртуальной памяти). Выводит следующие величины: kbmemfree количество свободной доступной памяти kbmemused количество используемой памяти без учета занимаемой ядром %memused процент используемой памяти kbmemshrd количество разделяемой (совместно используемой для нескольких процессов) системой памяти kbbuffers количество памяти, используемой ядром для Слферов kbcached количество памяти, нсполы\емон ядром под кэш kbswpfiee количество свободной области споппннга kbswpused количество пеполыуемой области свошшшл
628 II. Команды -R -о filename -s hh:n -U cp«|ALL %svvpused процент используемой облас1И своппинга Предоставляет сведения о страничной памяти (страница имеет размер 4 кбайт или 8 кбайт, что зависит от архитектуры). Выводит следующие величины: frmpg/s число страниц, освобождаемых системой за секунду shmpg/s число дополнительных страниц, разделяемых (совместно используемых несколькими процессами) системой за секунду bufpg/s число дополнительных страниц, используемых системой за секунду под память буферов campg/s число дополнительных страниц, используемых системой за секунду под кэш Сохраняет прочитанную информацию в виде отдельных записей двоичного формата в указанном файле. По умолчанию таковым является /var/log/sa/sadd. Устанавливает стартовое время. По умолчанию в качестве такового принято 08:00. Время должно быть указано в 24-часовом формате. Предоставляет статистику о загрузке CPU (ЦП - центрального проиес- ссора). Выводит следующие величины (как правило, в процентах): %user процент использования CPU под приложения пользовательского уровня %nice процент использования CPU на пользовательском уровне с приоритетом %system процент использования CPU в случае исполнения на системном уровне %idle процент времени, когда CPU бездействовал Предоставляет статистику о загрузке указанного процессора (числа от 0 и выше) или всех процессоров (ALL). Сообщает статус таблиц индексных дескрипторов, файлов и других таблиц ядра. Выводит следующие величины: dentunusd число неиспользованных элементов кэш в каталоге кэшпамяти file-sz число используемых файлов %file-sz процент используемых файлов относительно максимально возможного их числа inode-sz число используемых индексных дескрипторов % inode-sz процент используемых дескрипторов файлов относительно максимально возможного их числа super-sz количество суперблоков, используемых ядром %super-sz процент размещенных суперблоков относительно максимального их количества, поддержнвпемого ядром dquol-s/ число использованных элементов дисковых квот
II. Команды 629 %dquot-sz процент использованных элементов дисковых квот относительно их максимальною количества, которое в состоянии разместить ядро rtsig-sz число RT-сигналов очередей %rtsig-sz процент RT-сигиалов относительно их допустимого максимального количества -V Печатает информацию о версии программы и завершает sar. -w Предоставляет информацию о системных переключениях и выводит: cswch/s общее количество контекстных переключений в секунду -W Предоставляет сведения о своппинге. Выводит следующие величины: pswpin/s общее количество развернутых в секунду страниц ps\vpout/s общее количество свернутых в секунду страниц -xpid]SELF|SUM|ALL Предоставляет статистику об указанном процессе, гдерк/- идентификатор процесса, а задаваемые ключевые слова обозначают следующее: SELF предоставляет отчет о самом sar-процессе SUM предоставляет общее число главных и второстепенных погрешностей системы ALL предоставляет отчет о всех системных процессах В настоящее время мониторинг охватывает не более 256 процессов одновременно. Когда ие используется ключевое слово SUM, выводит следующие величины: minflt/s общее число второстепенных погрешностей, что процесс создал за секунду; при этом не требуется перезагрузка страницы памяти с диска majflt/s общее число существенных погрешностей, что процесс создал за секунду; при этом требуется перезагрузка страницы памяти с диска %user процент ресурса CPU, используемый процессом при выполнении на уровне пользовательского приложения %system процент ресурса CPU, используемый процессом при выполнении на системном уровне (ядро) nswap/s количество страниц памяти из адресного пространства процесса, сворачиваемых системой за секунду CPU номер процессора, который выполняет процесс Когда в командной строке используется ключевое слово SUM, выводятся следующие величины: minflt/s общее число второстепенных погрешностей, что система создала за секунду; при этом не требуется перезагр> jku страницы памят и с диска
630 II Команды majflt/s общее число существенных погрешностей, что система создала та секунду; при >том гребуегся пере нагрузка страницы памяти с диска -XpM|SELF|ALL Предоставляет статистику о дочерних процессах указанного процесса с идентификатором pid. Использует следующие ключевые слова: SELF готовит отчет о дочерних процессах самого sar-процес- са ALL готовит отчет о всех дочерних процессах всех системных процессов. Выводит следующие величины: cminflt/s общее число второстепенных погрешностей, что дочерние процессы создали за секунду; при этом не требуется перезагрузка страницы памяти с диска cmajflt/s общее число существенных погрешностей, что дочерние прцессы создали за секунду; при этом требуется перезагрузка страницы памяти с диска %cuser процент ресурса CPU, используемый дочерними процессами при выполнении на уровне пользовательского приложения %csystem процент ресурса CPU, используемый дочерними процессами при выполнении на системном уровне (ядро) cnswap/s количество страниц памяти из адресного пространства дочернего процесса, сворачиваемых системой за секунду -у Предоставляет статистику об устройствах TTY. Выводит следующие величины: rcvin/s число прерываний, возникших за секунду при приеме на текущей последовательной линии xmtin/s число прерываний, возникших за секунду при отправке на текущей последовательной линии Чтобы работала команда sar, должна быть смонтирована файловая система /ргос, содержащая различные файлы с системной статистикой. щ' rootlS'sofia: /root File Edit Settings Help sa[rootGsofia /root]tt sar -u 3 5 Linux 2.2.16-22 (sofia) 10:25:34 ph CPU 10:25:37 PM all 10:25:40 РИ all 10:25:43 PM all 10:25:46 PM all 10:25:49 PM all Average: all [rootGsofia /root]*t | 11/25/2001 Xuser 3.00 2.00 2.33 2.00 2.33 2.33 Xnice 0.00 0.00 0.00 0.00 0.00 0.00 ^system 8.00 5.33 8.66 9.00 8.33 7.86 _ П X Zidle 89.00 92.67 89.01 89.00 89.34 89.81 Л 1 J 1\
II Команды 631 SC3niOCJS подводит итоги по записям ж «налов 1NN. Синтаксис scanlogs [norotate] По умолчанию scanlogs также выполняет ротацию (упаковку в архив) и очистку журналов; обычно вызывается сценарием news.daily. ел «во norotate Препятствует ротации и очистке журналов; содержимое журналов только сканируется, но не меняется. Если scanlogs вызывается более одного раза в день, ключевое слово norotate препятствует принудительной очистке журналов. SCp «-зопасно копирует 1истан ионные «айлы. Синтаксис scp [-pqrvBC46][-F ssh_config] [-S program][-2 port] [-с cipher] [-i identity_file] [-o ssh_option][[userQ]hostlz]filel [...][[userS]bost2:]file2 Команда scp - это SSH-образное замещение команды гср. Она копирует отдельные файлы между хостами в сети и использует для этого оболочку безопасного соединения (ssh) с аутентификацией и зашитой, свойственной последней. И потому в отличие от гср команда scp запрашивает пароли или кодовые фразы, если они необходимы для аутентификации. Подобно гср полное имя файла может содержать имена хоста и пользователя (см. описание гср). Опции -с cipher Выбирает шифр, используемый для шифрования пересылаемых данных. Эта опция непосредственно передается ssh. -i identity Jile Определяет файл, из которого будет ечнтываться секретный ключ для RSA-ay тентификации. Эта опция непосредственно передается ssh. -г Если любой из исходных файлов является каталогом, копир) ет его рекурсивно. -р Сохраняет время модификации, права владения и полномочия на все копируемые файлы такими, как у оригинальных файлов. -v Подробный режим. I гредполагаег нечат ь отладочных сообщений со с го- роны scp и ssh. -В Устанавливает пакетный режим, препятствующий запросу паролей и кодовых фраз. -q Запрещает отображение индикатора но ходу выполнения процесса.
632 II Команды -С Устанавливает режим сжатия информации, передавая этот флаг ssh -F sshconjlg Указывает для ssh алыернативный файл конфигурации (по умолчанию в Red Hat 9 - /ctc/ssh/sshconfig). Эта опция непосредственно передается ssh. -Р port Указывает порт для подключения к дистанционному хосту. -S program Задает имя программы, используемой для зашифрованного соединения. Это программа должна понимать опции ssh. -о sshoplion Передает опции оболочке ssh в формате файла ssh_config. -4 Устанавливает для scp использование адресации IPv4. -6 Устанавливает для scp использование адресации IPv6. Принимая во внимание тот факт, что текстовые файлы хорошо сжимаются, можно резко повысить пропускную способность сети благодаря опции -С. Примеры Скажем, вам требуется копировать файл /home/sofla/my.txt в каталог /docs вашей учетной записи на дистанционном хосте: $ scp -p /home/sofia/my.txt so£ia@192.168.168.4:/home/sofia/docs После того как вы будете приглашены ввести пароль, вы сможете увидеть: my.txt 100% ********************** о 00:00 Это свидетельствует о завершении пересылки файла. Но командная строка может существенно упроститься, если создать файл ~/.ssh/config (пользовательский конфигурационный файл ssh) с таким содержимым: Eost=apple EostName=192.168.168.4 User=sofia ForwardAgent=yes ForwardXll=yes Compression=yes Здесь параметр ForwardAgent определяет, будет ли соединение с агентом аутентификации препровождено на дистанционную машину, а параметр ForwardX 11 - будут ли соединения X11 автоматически перенаправлены через канал безопасного соединения. Так, после этого исходная командная строка существенно упростится: $ вер -р my.txt apple:docs выполняет копию содержимого экрана терминала во время сеанса. Синтаксис script [-a][file...] script выполняет копию всего, что выводится на экран нашего терминала.
II. Команды f^'i'l On ци -a [file] Добавляет вывод в указанный файл file. Если файл не указан, исмолыу- ет имя typescript. Команда script завершается при нажаши комбинации Ctrl+D. Пример $ script Здесь следует протокол всего, что набиралось и выводилось на данный экран терминала. Ctrl+D $ Script done, file is typescript 5 cat typescript Script started on Hed Sep 27 23:46:27 2000 Здесь следует протокол всего, что набиралось и выводилось на данный экран терминала. SQITT - находит разницу между содержимым двух файлов К. и воплощает ее в третьем файле. Синтаксис sdiff -о outfile [options] from-file^ to-file Команда sdiff объединяет файлы from-file и to-file, интерактивно выводя результат в файл outfile. Если from-file является каталогом, a to-file - нет, sdiff попытается отыскать в каталоге файл по имени to-file, и наоборот; from-file и to-file одновременно не могут быть каталогами. Опции команды sdiff начинаются с дефиса; как правило, from-file и to-file не могут начинаться с этого символа. Если вместо одного из этих аргументов стоит дефис, sdiff считывает стандартный ввод. Команда sdiff без опции -о лишь пытается найти различие между содержимым двух файлов. Хотя данная функция явно устаревшая и для этого лучше применять команд)' diff. Опции -a, —text Рассматривает сравниваемые файлы как текстовые, даже если они таковыми не являются, и производит построчное сравнение. -Ь, — ignore-space-changc Игнорирует символы while space в конце строки и считает все др>гие последовательности, состоящие из одного или более таких символов, эквивален щымн.
634 И Команды -В, — ignore-blank-lines При нахождении отличий игнорирует пустые строки в файлах. Эта опция действует лишь в том случае, если строки действительно пустые, а ие выглядят гаковыми, хотя содержат символы пробелов или табуляции. -W, —ignore-all-space Игнорирует горизонтальные пропуски в процессе сравнения строк. Исторически гак повелось, что опция -W команды sdiff соответствует опции -w команды diff. -d, --minimal Пытается найти минимальрый набор отличий. Программа работает по другому алгоритму сравнения, что существенно замедляет ее работу. -Н, —speed-large-files Ускоряет обработку больших файлов с многочисленными мелкими различиями. -о, —output oulfile Помешает результат сравнения в файл outjile. -t, —expand-tabs Заменяет в выводе символы табуляции на пробелы. -i, — ignore-case Игнорирует регистр букв. -1 regexp, — ignore-matching-lines=?egevp Игнорирует строки, содержащие заданный шаблон regexp. В качестве шаблона обычно указывается регулярное выражение. -1, —left-column Печатает только левый столбец двух общих строк. -s, — suppress-common-lines Не выводит общих строк. -w columns, — width=co/HW«5 С помощью параметра columns указывает количество символов в строке вывода. Исторически так повелось, что опция -w команды sdiff соответствует опции -W команды diff. -v, —version Выводит информацию о версии программы. S6Q потоковый редактор. К. Синтаксис sed [-n][-V][—quiet][—silent][—version][—help][-e script] I—expression=script] [-f script-file] [—zile=script-file] [scrxpt-if-no-other-script][file...] О гличие от ed, vi и аналогичных редакторов заключается в том, что scd специально разработан для чтения команд в пакетном режиме, что предполагает их ввод с командной строки или сценария, а не интерактивный ввод с клавиатуры. Команда sed часто применяется в сценариях оболочки или как часть конвейера для филы рации вывода в
II. Команды 635 другую команду; она служит для построчной обработки, поэтому размер файла на нее не влияет. Именно поэтому редактор sed полезен для работы с большими файлами, поскольку ed и vi имеют 01раничения на размер обрабатываемого файла. Если ни опция -е, ни опция -f не заданы, первый неопционный аргумент script-if-no-other-script рассматривается как сценарий sed; все оставшиеся аргументы берутся как имена входных файлов. Если ни один входной файл не указан, считывается стандартный ввод. Команды редактирования файлов могут поступать не из файла сценария, а из командной строки. В этом случае они обычно заключаются в одиночные кавычки. Каждая команда sed состоит из необязательного адреса или диапазона адресов, односимвольного имени команды и дополнительного кода, прилагаемого к команде. Опции -V, —version Выводит информацию о версии программы и завершает ее. -h, —help Выводит список опций командной строки. -n, --quiet, —silent Запрещает автоматическую печать; по умолчанию sed, двигаясь по сценарию, распечатывает пробел в конце каждого цикла. Редактор sed будет генерировать вывод, если встретит команду р. -е script, — expression=scnp/ Добавляет команды из script к набору команд, запускаемых для обработки входных файлов. -f script-file. —file=script-Jile Добавляет команды, содержащиеся в файле script-file, к набору команд, запускаемых для обработки входных файлов. Команды sed могут не содержать адресов, в этом случае они будут выполняться для всех входных строк. Команды sed могут содержать всего один адрес, в этом случае они будут выполняться лишь для тех входных строк, чей адрес совпал с указанным. Наконец, команды sed могут содержать два адреса и будут выполняться для всех входных строк указанного этими адресами диапазона. Между адресом или диапазоном адресов и командой может быть вставлен восклицательный знак, указывающий, что команда будет выполняться лишь в том случае, если адрес не совпадает. Поддерживаются следующие типы адресов: number обрабатывает строку указанного номера first~N обрабатывает каждую N-тую строку, начиная со строки first $ обрабатывает последнюю строку Iregexpl обрабатывает строки, совпавшие с регулярным выражением regexp \cregexpc обрабатывает строки, совпавшие с регулярным выражением regexp, с - произвольный символ езадресные команды : label Задает метку label для команд b и t, Hcomment Определяет комментарий, завершающийся символом пси line.
636 II. Команды Безадресные или одноадресные команды = Печатает номер текущей игроки. а\ text Добавляет текст text (после обратного слэша имеется newline; i\ text Вставляет текст text (после обратного слэша имеется newline). q Немедленно покидает сценарий sed. г filename Добавляет текст из файла filename. Некото ые коман ы со ержа ие иапазон а есов { } Заключают блок команд. b label Осуществляет переход на метку label, если метка отсутствует, выполняет переход на конец сценария. t label Если команда sill успешно выполнила замещение до того, как была считана последняя входная строка, и до того, как возникла последняя команда t, переходит на метку label; если метка отсутствует, переходит на конец сценария. с \ Заменяет выбранные строки на указанный текст text (после обратного text слэша имеется newline). d Выполняет удаление строки (или диапазона строк). р Печатает строку (строки). slregexplreplacementl Пытается заменить шаблон regexp на replacement в указанных строках. w filename Записывает указанные строки в файл filename. Примеры S sed -n '2d' vvvl S Выполняет удаление второй строки файла vvvl S cat vvv3 3~1с \ ЬЬЬ $ sed -f vvv3 vvvl ssdd ssdd ЬЬЬ ЬЬЬ ЬЬЬ ЬЬЬ $ В файле vvv3 находится сценарий sed: начиная с третьей строки, заменить каждую последующую строку на строку bbb. Что и было выполнено для файла wvl.
II. Команды 637 sendmail транспортный агент электронной п«чт. Синтаксис sendmail [ flags][address... ] newaliases mailq [v] Программа sendmail отправляет сообщение одному или более адресшам address, выполняя маршрутизацию по любым необходимым сетям. Программа выполняет доставку порученного сообщения в положенное место. Однако sendmail не является конечным интерфейсом пользователя и используется только для доставки. Пользователь работает напрямую с другими программами электронной почты, передающими сообщение транспортному агенту sendmail. Без каких-либо флагов (опций)/7о£$ программа sendmail читает стандартный ввод до конца файла или строку, содержащую единственную точку, и передает найденное сообщение всем перечисленным адресатам. Опции {flags) -btype Устанавливает тип информации в теле сообщения. Текущие узаконенные значения — 7BIT или 8BITMIME. -Ьа Переходит в режим сети ARPANET. Все входные строки должны оканчиваться и все сообщения должны генерироваться с CR+LF (с возвратом каретки и переводом строки) в конце. Кроме того, проверяется имя отправителя, обнаруженное в полях From: и Sender:. -bd Запускает sendmail в качестве демона. Программа разветвляется и выполняется в фоновом режиме, прослушивая входящие SMTP-подключения на сокете 25. Обычно запускается из /etc/rc. -bD Аналогичен -bd, хотя запускает sendmail в приоритетном режиме. -bh Распечатывает БД состояний существующих узлов. -ЬН Очищает БД состояний существующих узлов. -Ы Инициализирует БД псевдонимов. -bm Доставляет почту обычным, принятым по умолчанию путем. -Ьр Печатает содержимое очереди сообщений. -bs Применяет протокол SMTP, как описано в RFC821, для стандартного ввода и вывода. Этот флаг реализует все операции, задаваемые с помощью флага -Ьа и совместимые с SMTP. -bt Запускает программу в режиме тестирования адресов: считывает адреса и информирует о всех шагах в процессе проверок. Применяется для отладки таблиц конфигурации. -bv Лишь проверяет имена, даже не пытаясь принимать или отправлять сообщение. Обычно используется для проверки пользователей или почтовых списков.
638 II. Команды C/i/e Использует альгернашвный файл конфигурации. Программа scndmail "оказывается" запускаться от имени суперполыователя, если задан альтернативный файл. -Ffullname Устанавливает полное имя отправителя. -tname Устанавливает имя человека, от которого пришла почта (From:). Флаг -f может использоваться лишь доверенными пользователями: root, daemon, network. -h/V Устанавливает значение счетчика, увеличивающееся каждый раз при обработке почты, в значение N. Если этот параметр не указан, подсчи- тываются строки сообщений с полями Received: (полученные). -i Игнорирует одиночные точки в строках входящих сообщений. Этот флаг обычно указывается, если информация считывается с файла. -N dsn Устанавливает параметр, определяющий условия доставки, в значение dsn. Допустимые значения - never (отсутствуют извещения) или разделенный запятыми список значений failure, если было извещено, что доставка не состоялась. Может быть получено извещение delay, сообщающее о задержке. Об успешной доставке уведомляет извещение success. -n He выполняет совмещения имен (назначения псевдонимов). -О option =vahie Устанавливает опцию option в заданное значение value. В этом формате используются длинные имена. -ox value Устанавливает опцию .v в указанное значение value. В этом формате используется только единственный символ имени. -рprotocol Указывает протокол, применяемый для получения сообщения. Здесь допускается обычное название протокола, например, UUCP, а также комбинация протокола и имени узла - UUCP:bingo. -q[time] Обрабатывает сохраненные в очереди сообщения через заданный интервал времени. Если time отсутствует, обрабатывает очередь единожды. Время задается как число с признаком, где s обозначает секунды, т-минуты, h - часы, d-дни и w- недели. Например, -qlhlOm означает то же, что и -q70m, а именно: 1 час и 10 мин. Если указан параметр time, scndmail запускается в фоновом режиме. -qlsuhstr Устанавливает предел на число обрабатываемых заданий, который задается параметром suhstr, являющимся подстрокой идентификатора очереди. -qRsuhstr Усганавливае! предел на число обрабатываемых заданий, который задается параметром substr, являющимся подстрокой одного из получателей. -qSsuhstr Устанавливает предел на число обрабатываемых заданий. Задает параметр substr, являющийся подстрокой отправителя.
II. Команды 639 -R return Устанавливает объем возвращаемого сообщения. Параметр return может быть установлен в значение full для возврат полного сообщения или в значение hdrs для возврата только заголовков. -' Считывает сообщение для получателей. Просматриваются строки То:, Сс: и Вес: в поисках адресов получателей. -U Определяет изначальное подчинение пользователя. Этот флаг должен быть всегда установлен для такого агента пользователя как mail или exmh и никогда для такого агента сетевой доставки как rmail. -v Переходит в режим выдачи подробных сообщений: информирует о замещении псевдонимов и т.д. -X logfile Регистрирует все входящие и исходящие трафики в файле регистрации log/lie. Применяется для отладки. Останавливает обработку флагов, рассматривая остаток аргументов как адреса. Существует также немало опций, которые обычно могут использоваться лишь системным администратором. Опции могут быть установлены либо в командной строке с помощью флага -о для коротких имен и флага -О -для длинных, либо в конфигурационном файле. Ниже приведен ограниченный список опций, которые полезны в командной строке и для отображения которых применяются длинные имена. Опции AliasFile=^?/e Использует альтернативный файл псевдонимов. HoldExpensive Подключаясь к почтовым узлам, которые считаются Expensive (нагруженными и дорогостоящими), не инициирует сразу соединение. Эта опция предполагает создание очереди. CheckpointInterval=Af Проверяет файл очередей сообщений после каждых успешных N доставок. По умолчанию N равно 10. DeliveryMode=.v Устанавливает режим доставки в значение х. Существуют следующие режимы: i интерактивная синхронная доставка b фоновая асинхронная доставка q доставка через очередь d подобна q. хота программа избегает просмотров БД DNS и NIS ErrorM ode=.v Устанавливает режим обработки ошибок в значение v: m возврат ошибочного сообщения w запись ошибочного сообщения (или возврат его, если отправитель не зарегистрирован) р вывод ошибок на терминал (но умолчанию) q сообщения об ошибках отбрасываются, возвращается лишь статус е выполнение специальной обработки для BcrkNct
II Команды Если текст сообщения в случае m или w не нужно возвращать по почте или отправитель находится на локальном компьклере, копия сообщения добавляется в файл dead.letter исходного катало! а отправителя. SaveFromLine Сохраняет Unix-стиль строк From в начале сообщений. IgnoreDots He рассматривает единственную точку в строке как конец сообщения. SendMimeErrors Посылает ошибочные сообщения в MIME-формате. Если эта опция не установлена, отменяет DSN (Delivery Status Notification - извещение о состоянии доставки). ConnectionCacheTimeout=/7meo!/f Устанавливает тайм-аут при подключении. МеТоо Посылает также и те (мне - отправителю), если существует соответствующее расширение псевдонима. CheckAliases Вводит в действие правило "правой руки" для команды newaliases. OldStyleHeaders Допускает "старый" стиль заголовков. QueueDirectory=9«eHerf;> Выбирает каталог qitenedir для накопления очереди сообщений. StatusFile=y?/e Хранит статистику в указанном файле. Timeout.queuereturn= time Устанавливает время тайм-аута для недоставленных сообщений очереди. Если доставка не осуществлена за этот промежуток времени, сообщения должны быть возвращены отправителю. По умолчанию принято 5 дней. UserDatabaseSpec=w.ser<teafcase Будет справляться о переназначении информации в БД пользователя userdatabase. Чтобы эта опция была доступна, sendmail должна быть скомпилирована с опцией USERDB. SevenBitlnput Выполняет усечение информации входящих сообщений до 7 бит. EightBitMode=mo«/e Устанавливает поддержку 8-битного входа для 7-битной дистанционной информации в заданном режиме mode. Параметр mode принимает следующие значения: m выполняет преобразование в 7-битный формат MIME р пропускает входную информацию как 8-битную s категорически отбрасывает сообщение MinQueueAge=//meoHf Устанавливает, как долго задание хранится в очереди между попытками отравить его. DefaultCharSet=c/7or.se/ Устанавливает символ charset, используемый, чгобы номешть S-бит- иую информацию, которая не была помечена.
II. Команды 641 D\A\Delay=slecptime Устанавливает время ожидпния sleeplime в секундах, если попытка открыть подключение оказалась неудачной. MaxDaemonChildren=/V Задает максимальное количество дочерних процессов, которые разрешено создавать демону входящих сообщений SMTP. ConnectionRateThrottle=7V Устанавливает максимальное число подключений (в секунду) к порту SMTP. Первый символ имени псевдонима может быть вертикальной чертой, при этом остаток имени трактуется как команда для отправки. Рекомендуется заключать такое имя в кавычки, что препятствует нежелательным действиям sendmail по подавлению пробелов между аргументами. Псевдонимы могут также иметь следующий синтаксис: :include:///ewame При этом filename будет рассматриваться sendmail как имя файла со списком получателей сообщений. Программа sendmail возвращает код завершения, описывающий ее действия. Коды определяются в <sysexits.h>. Ниже приведены коды завершения sendmail: ЕХОК успешное выполнение для всех заданных адресов EXNOUSER имя пользователя не распознано EXUNAVAILABLE были недоступны некоторые необходимые ресурсы EXSYNTAX синтаксическая ошибка в адресе EXSOFTWARE ошибка внутреннего программного обеспечения при включении некорректных аргументов EXOSERR временная ошибка ОС: невозможность выполнить разветвление процесса и т.д. EXNOHOST не распознано имя сетевого узла EXTEMPFAIL сообщение не может быть немедленно отправлено, хотя находилось в очереди Вызванная как ncwaliascs программа sendmail перестраивает БД псевдонимов; вызванная как mailq - перестраивает содержимое почтовой очереди. S6rVIC6 управляет запус • i служб. ИНТ - -I service name_of_script [keyword] Команда service использует сценарии из каталога /etc/rc.d/init.d для управления запуском, повторным запуском и завершением разных служб. Никогда не следует путать исполняемый файл, скажем /usr/sbin/httpd (сервер Apache), со сценарием /etc/
642 II Комацды rc.d/init.d/httpd. Необязательное ключевое слово keyword и определяет осуществляемое действие над указанной службой name of script. В каталоге /ctc/rc.d/init.d содержится полный перечень служб данной системы. Далее перечислены упогребляемые значения keyword: система использует эту опцию для запуска во время загрузки; суперпользователь также может применять эту опцию start stop reload restart система (су пернользователь) использует эту опцию для останова службы суперпользователь может перезагружать службу, посылая сигнал HUP (см. приложение I) и вынуждая перечитывать файлы конфигурации суперпользователь подходящим образом останавливает службу и тотчас запускает ее вновь; если служба еще не запущена, она будет запущена condrestart осуществляет то же действие, что и restart, но лишь с уже запущенной службой status сообщает о состоянии службы Примеры Чтобы выяснить набор допустимых значений keyword для конкретной службы, достаточно запустить команду service без параметра keyword: I service nfs Применение: nfs {start|stop|status|restart|reload} t Такие значения keyword допускаются для службы NFS (распечатка выполнена в русской версии Red Hat Linux 9). А так выполняется рестарт службы NFS: # service nfs restart Файл Правка Вид Терминал Переход Справка Останавливается NFS EDUntd: О К ] Останавливается денек NFE ] О К ] Shutting dewn NFS quotDB: О К ] Останавливаются сервисы Б! F S : О К ] Запускаются службы NFS I О ЕС ] Starting NFS quotas i О К 1 Запускается демон N F S 1 О ЕС ] Запускается NFS mountdi О К ] ел
II. Команды 643 otJlKtJyCAJCieo загружает элементы таблицы отображения скан-кодов в коды клавиш. Синтаксис setkeycodes scancode keycode... Обычная клавиатура персонального компьютера создает наборы скан-кодов (шест- надцатеричные значения) при каждом нажатии и освобождении клавиш. Скан-коды можно отобразить с помощью команды getkcycodes. Ядро анализирует поток скан- кодов и преобразует их в поток кодов клавиш (десятичные значения), определяющих действия, выполняемые ядром при нажатии/освобождении клавиш. Поток скан-кодов содержит неуправляющие скан-коды типа хх (7 бит) и управляющие пары скан-кодов типа еОхх (8+7 бит). В ядре заложено, что коды клавиш в интервале 1—88 равны своим скан-кодам (0x01-0x58). Для оставшихся скан-кодов (0x59- 0x7f) и пар скан-кодов (ОхеО 0х00-0хе0 0x7f) могут быть назначены соответствующие коды клавиш из интервала 1—127. Команда setkeycodes выбирает из командной строки пары аргументов, предполагая, что первый аргумент пары является заданным скан-кодом, а второй - соответствующим кодом клавиши. Эта информация передается драйверу клавиатуры, находящемуся в ядре. Эта команда будет полезна пользователям, имеющим у себя несколько клавиш, чьи скан-коды не распознаются ядром. Когда как вы добавите новые элементы в таблицу отображения для драйвера ядра, можно использовать команду loadkeys, позволяющую определить функцию клавиши. setserial - отображает характеристики последовательного порта и конфигурирует -г«. Синтаксис setserial [-abqvVz] device [parameter! [ arg ]] ■•■ setserial -g [-abGv] devicel ... Команда setserial отображает статистику и реконфигурирует последовательный порт. Один из способов найти информацию о ваших последовательных портах в каталоге /dev состоит в проверке имен файлов; файлы с именами, начинающимися на ttyS (см. приложение 11), и есть ваши последовательные порты. То, что в DOS называется СОМ 1 (IRQ4, порт 0x3f8), в Linux есть /dev/ttySO; COM2 (1RQ3, порт 0х2№) - /dcWttySl. Далее приведены IRQ и адреса портов ввода/вывода, назначенные четырем последовательным портам:
644 II. Команды Порт IRQ Адрес ввода/вывода СОМ1 4 0x3f8 COM2 3 0x2f8 COM3 4 0хЗе8 COM4 3 0х2е8 Два значения IRQ - 3 и 4 - разделяются среди четырех СОМ-иортов. Команда setserial может быть применена, чтобы сконфигурировать и настроить характеристики порта, используя различные опции командной строки. Соответствующую строку с командой setserial можно поместить (или создать файл сценария) в сценарий /etc/rc.serial, который вызывается во время обычной загрузки системы из сценария /ctc/rc.d/rc.sysinit. Если никаких параметров не указано, setserial будет распечатывать тип порта, порт ввода/вывода устройства, IRQ, базовую скорость и некоторые необязательные флаги. А если задана опция -g, аргументы команды setserial рассматриваются как список устройств, харкгеристикн которых следует распечатать. Без опции -g первый аргумент команды setserial интерпретируется как устройство, которое должно быть модифицировано или характеристики которого должны быть распечатаны, а любые дополнительные аргументы рассматриваются как назначаемые параметры. В основном для установки характеристик порта требуется статус суперпользователя, хотя некоторые параметры могут быть установлены и обычными пользователями. Опции -а Выводит всю доступную информацию при распечатке конфигурации последовательного устройства. -Ь Печатает итоговую информацию по конфигурации устройства последовательного порта. -G Печатает информацию по конфигурации устройства последовательного порта в таком виде, чтобы она могла быть возвращена команде setserial в качестве аргументов командной строки. -q Выводит краткий листинг. _v Осуществляет вывод информации в подробном формате. _V Выводит информацию о версии setserial и завершает ее работу. _z Обнуляет флаги последовательного порта перед их установкой. Во время обычной загрузки системы инициализируются только COM-nopi ы 1 -4 с использованием принятых по умолчанию портов ввода/вывода и значений IRQ. Чтобы инициализировать дополнительные последовательные порты или поменять н\ конфигурацию, приходится пользоваться командой setserial. При использовании некоторых последовательных устройств, таких клк сотовый телефон, приходится устанавливать специфические характеристики иослелонлгечыюго порта. Следующие параметры могут быть назначены последовательном) иорг>:
II. Команды 645 port portnumber устанавливает порт ввода/вывода irq irqnumber устанавливает IRQ uart uartlype устанавливает тип U ART (none, 8250, 16450 и пр.); использование значения none запрещает порт autoconfig просит ядро попытаться автоматически сконфигурировать данный порт auto_irq во время процесса автоконфигурации пытается определить IRQ Aauto_irq во время процесса автоконфигурации не пытается определить IRQ skiptest во время процесса автоконфигурации пропускает тест UART Askip_test во время процесса автоконфигурации не пропускает тест UART baudbase baudbase Устанавливает базовую скорость передачи (тактовая частота, деленная на 16); обычно это значение равно 115200 spdhi Использует скорость 57.6 Кбит, когда приложение требует 38.4 Кбит; параметр доступен обычному пользователю spdvhi Использует скорость 115 Кбит, когда приложение требует 38.4 Кбит; параметр доступен обычному пользователю spdshi Использует скорость 230 Кбит, когда приложение требует 38.4 Кбит; параметр доступен обычному пользователю spdwarp Использует скорость 460 Кбит, когда приложение требует 38.4 Кбит; параметр доступен обычному пользователю spdcust Использует заказной делитель, чтобы установить скорость, когда приложение требует 38.4 Кбит; скорость передачи равна baudbase, деленной на делитель; параметр доступен обычному пользователю spdnormal Использует скорость 38.4 Кбит, когда приложение требует 38.4 Кбит; параметр доступен обычному пользователю divisor divisor устанавливает заказной делитель, используемый при выборе опции spdcust и установке приложением скорости порта в значение 38.4 Кбит sak устанавливает клавишу прерывания в Secure Attention Key Asak запрещает Secure Attention Key fourport конфигурирует последовательный порт под мультипортовую плату AST Fourport (четырехпортовую) Afourport запрещает конфигурацию AST Fourport Это лишь часть опций из тех, что могут быть задействованы. Специальные мульти- портовые платы позволяют использовать несколько последовательных портов на одной IRQ-линии.
646 II Команды Примеры Предположим, у вас имеется высокоскоростной модем, и вы добавляете специальную строку в файл rc.scrial. чтобы запустить программу setserial и установить для последовательного порта специальный флаг spdvhi. Установка такого флага позволяет вашему ПК взаимодействовать с модемом с куда большей скоростью чем он может использовать для соединения с дистанционной системой. Добавьте следующую строку в файл rc.serial: /bin/setserial /dev/ttySO spd_vhi Теперь получим информацию по интересующему нас порту: # setserial -a /dev/ttySO /dev/ttySO, Line 0, UART: 16550A, Port: 0x03f8, IRQ: 4 Baud_base: 115200, closedelay: 50, divisor: 0 closing_wait: 3000 Flags: spd_vhi skip_test t sniocK - создает lock-файлы для использования в сценариях оболочек. Синтаксис shlock -p pxd -f name l-b][-u][-c] Программа shlock пытается создать lock-файл с именем пате и записать в него идентификатор процесса pid. Если файл уже существует, shlock считывает из него PID, а затем проверяет, запушен ли процесс с таким идентификатором. Если такой процесс обнаружен, файл не будет создаваться. Программа shlock завершается с нулевым кодом, если ей удалось создать lock-файл, или с ненулевым кодом, если файл ссылается на текущий активный процесс. Создание lock-файлов (файлов блокирования) призвано противодействовать нескольким попыткам одновременной записи в один и тот же файл (например, файл history). Опции -Ь Идентификаторы процессов обычно считываются и записываются в формате ASCII. Если используется флаг -Ь, будет записывать их как двоичное целое. -и Синоним опции -Ь, применяется для совместимости с другими системами. -с Не создает lock-файл, а вместо этого использует указанный файл, чтобы проверить, не установлена ли блокировка другой программой. Если блокирование уже имеет место, shlock завершается с ненулевым кодом; если блокирования не существует, программа завершается с ^левым кодом.
II. Команды 647 SnOWaUCllO воспроизводит звуковое сообщение электронной почты. О . - - showaudio file-name Программа showaudio позволяет пользователю соответствующим образом оборудованной рабочей станции воспроизвести звуковое сообщение, возможно, созданное при помощи команды audiocompose. Обычно эта команда вызывается программой metamail в соответствии с содержимым файла mailcap и воспроизводит указанные файл(ы)У|/е-ияте. showexternal выбирает и отображает тело почтового сообщения, включенного с помощью ссылки. Синтаксис showexternal body-file access-type паше [site]directory [mode [server]]] Отмечает реальное тело сообщения, включенное по ссылке, используя МШЕ-тип message/external-body. Обычно эта команда вызывается командой metamail в соответствии примерно с таким элементом файла mailcap: message\external-body; showexternal % %{accessOtype} %{name} %{site} %{directory} %{mode} %{server}; needsterminal; ... и т. д. showkey - печатает на стандартный вывод или код, или символ каждой нажатой клавиши. Синтаксис showkey [ - [ hVskm] ] [ -tff] По умолчанию программа showkey "дожидается" нажатия очередной клавиши 10 секунд, после чего завершается. Программа showkey работает втрех режимах: scancode dumping, keycode dumping и keymap testing. Смысл перечисленных режимов раскрывается при описании опций программы. пции -h, -help Выводит информацию о версии программы и краткую справку о ее возможностях п стандартный файл ошибок, затем завершается. -V, -version Выводит информацию о версии программы в стандарты» файл ошибок, затем завершается.
648 II Команды -s, —scancodes Запускает showkey в первом из режимов - scancode dumping. Распечатывает на стандартный вывод в шестнадцатеричном формате каждый байт, полученный при нажатии клавиши клавиатуры. Начинает печатать с новой строки, когда между получаемыми байтами возникает интервал около 0.1 секунды или переполняется внутренний принимающий буфер. Этот режим изначально предназначался для отладки драйверов клавиатуры или других низкоуровневых интерфейсов и не представляет большого интереса для обычного пользователя. -k, —keycodes Запускает программу во втором режиме, принятом по умолчанию. В режиме keycode dumping печатает на стандартный вывод код каждой нажатой или отпущенной клавиши, отмечая даже эти события. Коды клавиш - это числа, назначаемые ядром каждой отдельной клавише. Каждая клавиша ассоциируется с единственным кодом, хотя при нажатии клавиши ядру может посылаться один или несколько scan-кодов (см. первый режим). -m, —keymap Запускает программу во втором режиме, но выводит символы так, как они транслируются ядром, использующим текущее отображение клавиатуры. В этом режиме также отмечается, но вовсе не выполняется действие каждой клавиши. -t N, —timeout=W Меняет заданное по умолчанию (10 секунд) время тайм-аута. Приме! После запуска команды showkey были нажаты клавиши с символами латинской клавиатуры - а, Ь, с, d. kb mode was XLATE press any key (program terminates after 10s of last keypress)— keycode 28 release keycode 30 press keycode 30 press keycode 30 press keycode 30 release keycode 48 press keycode 48 release keycode 46 press keycode 46 release keycode 32 press keycode 32 release После запуска команды showkey были нажаты те же клавиши, что и ранее, но в комбинации с клавишей правая Alt - символы кириллицы ф, и, с, в. kb mode was RAW [ if you are trying this under X, it might not work since the X server is alBo reading /dev/console ] press any key (program terminates after 10b of last keypress)... keycode 28 release keycode 100 press keycode 100 press
II. Команды 649 keycode keycode keycode keycode keycode 100 100 100 100 100 keycode 100 keycode 100 keycode keycode keycode keycode keycode keycode keycode keycode keycode keycode keycode keycode keycode keycode keycode keycode keycode 100 100 100 100 100 100 100 100 30 30 48 48 46 46 32 32 100 press press press press press press press press press press press press press press press press release press release press release press release release А теперь с помощью команды showkey -s были получены scan-коды соответственно для ранее рассмотренных первого и второго случаев. kb mode was RAH [ if you are trying this under Xf it might not work since the X server is also reading /dev/console ] press any key (program terminates after 10s of last keypress) — 0x9 с Oxle 0x9e 0x30 OxbO 0x2e Oxae 0x20 OxaO kb mode was RAW [ if you are trying this under X, it might not work since the X server is also reading /dev/console ] press any key (program terminates after 10s of last keypress)... 0x9c OxeO 0x38 Oxle Oxle OxeO 0xb8 0x9e 0x30 OxeO 0x38 OxeO 0x38 OxbO OxeO OxbB 0x2e OxeO 0x38 Oxae OxeO 0xb8 OxeO 0x38 0x20 0x20 0x20 OxaO OxeO 0xb8
650 II Команды showmount выводит информацию о подключениях к серверу NFS. Синтаксис shovmount [-adehv][—all][—directories][—exports][—no-headers] (—help][—version][host] Программа showmount запрашивает демон монтирования дистанционного узла host по поводу состояния сервера NFS на той машине. Вывод showmount выглядит так, будто предварительно обрабатывался с помощью команды sort -u. Опции -a, —all Отображает имя клиентского узла и смонтированный каталог в формате - узел: каталог. -d, —directories Отображает только смонтированные каталоги. -е, --exports Отображает список экспортирования сервера NFS. -h, —help Выводит краткий список опций. -v, —version Выводит информацию о текущей версии программы —no-headers Убирает из вывода заголовки описаний. Пример $ showmount nfs-server.rambler.com $ Выводит список клиентов, которым разрешено импортировать файлы с сервера nfs-server.rambler.com. shownonascii выводит все или часть сообщения электронной почты не в ASCII-шрифте Синтаксис shownonascii charset-font-name [-e command-to-execute] file-name Программа shownonascii позволяет просмотреть под XII информацию файлов file-name не в ASCII-символах. По умолчанию, используя имя указанного шрифта charset-fonl-name, будет от крыт xtcrm и для просмотра файлов запушена коман %\ more. Опции -е command-to-execute Запускает вмесю more указанную команду command-to-K%\cciitc.
II. Команды 651 SnOWpartOl - собирает по частям большое сообщение MIME-формата. Синтаксис showpartial file id partnum totalnum Программа showpartial извлекает тело сообщения MIME-формата типа message/partial (часть сообщения) для дальнейшего использования. Вызванная на последней части, она собирает все куски вместе и вызывает metamail, чтобы отобразить полное сообщение. Программа showpartial обычно вызывается командой metamail в соответствии с содержимым файла mailcap. Извлекаемые части сообщения помешаются в каталог /tmp, который может переполниться, так и не дождавшись последних частей. Когда с помощью metamail отображается полное сообщение, части отбрасываются за ненадобностью, а к пользователю поступит запрос, требуется или нет удалять полное сообщение. showpicture выводит изображение, полученное по электронной почте. Синтаксис showpicture [-viewer program-name] file-name... Программа showpicture позволяет пользователю на соответствующим образом оборудованной рабочей станции выводить изображения, используя программу xloadimage. Обычно showpicture вызывается программой metamail в соответствии с содержимым файла mailcap. Имена файлов с изображениями указываются аргументом file-name. Опции -viewer program-name По умолчанию для просмотра изображений под XII используется команда xloadimage -view -quiet -geometry +1 +1. Такое положение дел может быть перекрыто или переменной окружения XVIEWER или опцией -viewer. ShOWrgD декомпилирует БД RGB-имен. Синтаксис showrgb [database] Программа showrgb считывает скомпилированную бачу данных RGB-имен цветов (см. X) и конвертирует ее обратно в исходную форму, распечатывая рс\лы.и на сган-
652 II Команды дартныи вывод. По умолчанию сушествуег лишь одна такая БД, построенная с помощью X. Следует указывать имя БД без суффикса .pag или .clir. По умолчанию БД является файл <A7?007>/lib/Xll/rgb.txts где XROOT- корневой каталог инсталлированного дерева XII. Пример $ showrgb 2SS 250 250 248 248 255 248 248 255 245 245 245 245 245 245 220 220 220 255 250 240 255 250 240 253 245 230 253 245 230 250 240 230 250 235 215 250 235 215 255 239 213 255 239 213 255 235 205 255 235 205 255 228 196 6nov ghost white Ghostwhite white smoke HhiteSmoke gainsboro floral white FloralWhite old lace OldLace linen antique white Antiquewhite papaya whip Papayawhip blanched almond BlanchedAlmond bisque shrinkfile усекает «аил по линии границы. Синтаксис shrinkfile [-nj[-m maxsize][-s size][-v] file... Программа shrinkfile усекает файл file до заданного размера size, если его размер больше максимального maxsize. Усечение производится по линии границы или, правильнее сказать, по концу строки. Символ newline будет добавлен к любому непустому файлу, который не заканчивался на newline. Опции -s size По умолчанию параметр size равен 0, и файлы усекаются до нуля байт. По умолчанию maxsize равен size. Если maxsize меньше, чем sire, то maxsize переустанавливается в значение size. Так как программа усекает файл по концу строки, полученный размер может оказаться меньше, чем указанный. Параметры size и maxsize могут завершаться буквами k, m или g, соответственно обозначающими килобайт, мегабайт или гигабайт. Максимальный размер файла составляет 2147483647 Gain. -v Печатает строку состояния, если файл был усечен. -п Программа shrinkfile завершается с нулевым кодом, если орштничь- ный файл больше, чем значение maxsize, в противном случае - завершается с кодом 1. Ни один файл не меняется.
II. Команды 653 shutdown заве шает аботу системы. Синтаксис shutdown [-t sec][-arkhncfF] time {warning-message] Корректно завершает работу системы через указанный промежуток времени time или в конкретно заданное время. Все зарегистрировавшиеся пользователи предупреждаются о предстоящем отключении, регистрация новых пользователей не производится. Вполне возможно "закрыть" систему буквально сразу или через указанный промежуток времени. Прежде всего посредством сигнала SIGTERM (см. приложение I) о предстоящем завершении работы системы уведомляются все процессы. Что дает программам, подобным vi, время на сохранение редактируемых файлов, почты, новостей и т.д. Программа shutdown "делает свое дело", сигнализируя процессу init и предлагая поменять уровень функционирования (или запуска, или выполнения - в литературе встречаются разные термины) системы. Нас будут интересовать такие уровни функционирования: 0 используется для завершения работы системы 6 выполняется перезагрузка системы 1 система переводится в однопользовательский режим, удобный для выполнения целого ряда административных задач Опции -а Использует файл /etc/shutdown.allow, содержащий список пользователей, которым разрешено завершать работу системы. -t sec Просит init подождать sec секунд между отправкой процессам уведомлений и сигналов kill до перехода на другой уровень функционирования системы. -1с В действительности не завершает работу системы, лишь посылает всем уведомляющие сообщения. -г Выполняет перезагрузку системы. -h Выполняет останов после завершения работы системы. -п Самостоятельно выполняет завершение работы системы, не прибегая к помощи init, что в ряде случаев небезопасно и чревато неожиданными результатами. -f При перезагрузке не вызывает fsck (программу, проверяющую состояние файловой системы). Вызывает быструю перезагрузку системы. При этом только создается файл /fastboot, который затем тестируется вновь загружаемой си- сгемой. Программа fsck может даже и не вызываться, если nepetai p> i- ка прошла успешно. После этого файл /fastboot удаляется. -F При перезагрузке вызывает fsck. Отличается от опции -f тем, что обязательно вызывает fsck, так ч го даже ранее корректно демонтированные файловые системы вновь б>-
654 II. Команды дут проверены fsck. Вместо файла /fastboot в этом случае создается /forcefsck, который будет удален по завершении загрузки. -с Снимает уже запушенный процесс завершения работы системы. В случае использования этой опции нельзя задавать аргумент time. Существует два формата задания api умента time. В первом случае может указываться абсолютное время в формате Ыг.пип, где ЛЛ - это часы (одна или две цифры) и mm — минуты (две цифры). Во втором случае применяется формат +;и, где т - количество минут ожидания до завершения работы системы. Слово полу (сейчас) является псевдонимом для выражения +0. Если команда shutdown указывается с задержкой, она создает файл /etc/no, который запрещает программам, таким как login, регистрировать новых пользователей. впит^олл п может быть вызвана из init при нажатии магических клавиш Ctrl+Alt+Del, хотя это означает, что любой, получивший доступ к консоли и нажавший эти клавиши, может завершить работу системы. Чтобы препятствовать этому, и существует опция -а. Вначале shutdown проверяет наличие файла /etc/shutdown.allow, а затем наличие регистрационного имени пользователя, инициирующего завершение работы системы, в списке, содержащемся в упомянутом файле. Только суперпользователь или авторизованные пользователи могут "закрывать" систему. Для описания каждого авторизованного пользователя в файле /etc/shutdow n.allow отводится но одной строке. Разрешаются пустые строки и комментарии, начинающиеся с символа #. В этом файле не может быть описано более 32 пользователей. SIZ6 - сообщает информацию о размерах секций и общих размерах объектных файлов. Синтаксис size [ —А| —в| —f ormat =сошраtibili ty\ [ —help] [-d j -о j -x| —radix=nuujber] [—target=bfdflame] [-V|—version] objfile... По умолчанию создается отдельная выходная строка для каждого объектного файла или модуля из архива, указываемого аргументом objfile. Опции -А, -В, —formai=compatibility Используя одну из этих опций, преобразовывает вывод в формате утилиты GNU size в формат System V size (применяя опцию -А или — format=sysv) или Berkeley size (применяя опцию -В или —format=berkeley). По умолчанию формат подобен Berkeley size. —help Выводит краткие сведения об аргументах и опциях программы и завершает ее работу. -d, -о, -х, ~гасИх=иитЬе/" Используя одну из этих опций, управляет форматом размера секций: d, —radix 10- десятичный формат о, —radix 8 - восьмеричный формат
II. Команды 655 х,—radix 16 шестнадцагеричный формат Общий размер всегда выводится в десяшчном и шесшадцатеричном форматах, если определены опции -d и -х, или восьмеричном и шест- надцатеричном, если задана опция -о. —taigel=bfdname С помощью bfdname принимает определение формата объектного кода для objfile, хотя в этом нет особой необходимости, так как sue распознает много форматов (см. objdump, где приводится перечень допустимых форматов). -V, —version Выводит информацию о версии программы и завершает ее работу. Пример 1 size text 3791 t -d /lib/libss. data 868 .so.2.0 bss 220 dec 14879 hex 3alf filename /lib/libss.so.2.0 SIGGp - задает задержку прежде, чем выполнять следую- К. щую команд . Синтаксис sleep [option] лшпЬег [suffix] Данная команда часто применяется при написании сценариев. Выполняет задержку в number секунд. Необязательный аргумент suffix задает временные единицы измерения: s секунды h часы m минуты d дни Опции —help Выводит краткое описание sleep и завершает ее работу, —version Выводит информацию о версии sleep и завершает ее. SOrt сортирует строк текстовых «аилов. IV Синтаксис sort [option]...[file]... Направляет результат сортировки на стандартный вывод. Опции +posl \-pos2] Устанавливает ключ сортировки, начиная с позиции pos\ и до позиции pos2. Номера полей и смещения символов указываются, начиная с нуля. _ь Игнорирует пробелы в начале сортируемых нолей или в начале ключей.
656 II Команды "с Проверяет, сортировался ли указанный файл. Если да, то не выполняег сортировку. "d Воспринимает в составе ключей лишь буквы (лт инского алфавига), цифры и пробелы, игнорируя все прочие символы. -f В процессе сортировки преобразует в ключах строчные буквы в соответствующие прописные. -g Выполняет сравнение в соответствии с общим числовым значением, предполагает указание опции -Ь. -i Рассматривает в ключах только символы ASCII, игнорируя все прочие символы. -k pos\[,pos2] Устанавливает ключ сортировки, начиная с posl и заканчивая posl (включая pos2). Номера полей и смещения символов указываются, начиная с единицы. -1 Сортирует в соответствии с текущей локалью. -т Объединяет ранее отсортированные файлыу?/е, не сортируя их повторно. -М Выполняет сравнение по трехсимвольным сокращениям названий месяцев (англоязычный вариант): JAN<...<DEC (ЯНВ<...<ДЕК) Предполагается опция -Ь. -п Сравнивает по числовому значению, предполагается опция -Ь. -о file Выводит результат в указанный файл вместо стандартного вывода, -г Выполняет сортировку в обратном порядке, -t sep Задает разделитель полей. -Т dir Использует указанный каталог для временных файлов, игнорируя STMPDIR и /tmp. -и Если задана опция -ш, выводит только первую строку из последовательности одинаковых строк или проверяет отсутствие одинаковых строк, если указана опция -с. -z Вместо newline (символа новой строки) завершает строки нулем; для команды find предполагается опция -printO. —help Выводит список опций и завершает программу. —version Выводит информацию о версии программы и завершает ее. Если в командной строке не указан никакой файл или вместо имени стоит дефис, считывает стандартный ввод. Пример $ sort -о vw vw $ Заменяет файл vw на его отсортированную версию.
II. Команды 657 SOUrCG считывает и выполняет команды из указанного В файла в окружении текущей оболочки. Синтаксис . filename [arguments] source filename [arguments] После исполнения команд из файла filename возвращает код зааершения последней команды, выполненной из этого файла. Если аргументfilename (имя файла) не содержит слэш, для нахождения файла использует маршруты, определяемые переменной PATH. Если и после этого файл не обнаружен, продолжает поиск в текущем каталоге. Заданные arguments рассматриваются как позиционные параметры, используемые при выполнении сценария из указанного файла. Spill - делит файл на части. К интаксис split [option][input [prefix]] Выводит части фиксированного размера файла input в виде файлов рге/аял, prefixab и т.д. По умолчанию аргумент prefix установлен в значение х. Если никакой файл не задан или вместо имени файла стоит дефис, считывает стандартный ввод. On ии -b. —bytes=sfce Указывает размер выходного файла (байты). -С, — line-bytes=.s/ze Указывает максимальный размер строк выходного файла. -1, — \ines=number, -number Берет для выходного файла указанное количество строк. —verbose Распечатывает диагностику в стандартный файл ошибок до открытия каждого выходного файла, —help Выводит список опций и завершает программу, —version Выводит информацию о версии программы и завершает ее работу. Значение параметра she может быть дополнено одним из следующих суффиксов: b 512 байт к 1 килобайт m 1 мегабайт Пример Файл га1)135 рамером 2511 байт дели гея па часш с помощью ком.шды split:
658 II Команды $ split -b 512 гаЫ35 $ Возникают четыре файла - хаа, xab, xac, xad - размером 512 байт и файл-остаток под названием хае. Размер последнего составляет 463 байт. splitmail делит большое почтовое сообщение на несколько сообщений в MIME-формате. Синтаксис splitmail [-d][-s splitsize] [-p prefix][-i id~suffix][ file-name] Профамма splitmail берет почтовое сообщение и разбивает его на более мелкие части с использованием MIME-типа message/partial (частичное сообщение). По умолчанию берет сообщение либо со стандартного ввода, либо с поименованного файла file-name и создает файлы частей сообщения с именами /tmp/split.l для первой части, /tmp/split.2 для второй и т.д. иу -d На самом деле осуществит доставку почты. -р prefix Перекрывает упомянутый выше префикс /tmp/split. значением параметра prefix. -i id-suffix Генерирует части сообщения с подобными, но не идентичными полями Message-Id:, оканчивающиеся заданным суффиксом id-suffix, в формате, позволяющем легко связывать одну часть сообщения с другой. -s splitsize По умолчанию на большинстве сайтов размер части составляет 250000. Но с помощью опции -s или переменной окружения SPLITSIZE может быть заменен на указанное значение splitsize. -v Выводит информационные сообщения. Конечно, можно установить размер части, скажем, в значение 1000000 (или более), что фактически гарантирует, что реальное сообщение не будет разбито на части, но, с другой стороны, не следует забывать, что по пути оно может быть отвергнуто транспортным программным обеспечением электронной почты по причине большого размера. SSn - клиент SSH для регистрации пользователей и выполнения команд на 1истан ионной машине. Синтаксис ssh [-1 login_name] hostname\userQhostname [command] ssh [-axACX1246][-c blowfish|3des|des][-e escapechar] [-i identity_file] [-1 login_name][-o option][-p port][~F configfile] [L port: hosti hostport] hostname\userQhostname [command]
II. Команды 659 Чтобы защигить себя и своих пользований oi aiaK, скажем, через Telnet или F IP, а также от "вынюхивания паролей" (так называемый сниффинг) при дис1анционном доступе, необходимо применять такую систему, которая шифрует все, что проходи! через нее. Поэтому, где только возможно, нужно использовать SSH (особенно вместо г- команд), достигая при этом: • шифрования всего, что проходит через сеть, от паролей и до самих сеансов • проверок ключей, иден гифицирующих хосты • автоматического прохождения клиентов (ряда клиентских пакетов) системы X Window таким образом, что никогда не придется вновь создавать другие xauth и xhost. • клиентов для широкого круга операционных систем • поддержки ssh является принципиальной клиентской npoi раммой, a sshd - сервером Unix (демоном ssh). Демон может быть запушен в автономном режиме и принимать подключения к самому себе или может быть запущен с помощью inetd. В добавление к основному клиенту, ssh, в пакете OpenSSH существует ряд других клиентских утилит: scp, sftp, ssh-keygen и др. ssh - это программа для регистрации пользователей (user) и выполнения команд (command) на дистанционной машине (hostname), призванная заменить команды riogin и rsh. Если переменная ForwardXl 1 установлена в значение "yes" и пользователь использует XI1 (установлена переменная окружения DISPLAY), подключение к дисплею XII автоматически осуществляется на дистанционном хосте таким образом, что любые программы XII, стартующие из оболочки, пойдут через зашифрованный канал и соединение с реальным Х-сервером будет выполнено с локальной машины. Пользователь не должен вручную устанавливать DISPLAY. Прохождение соединений XII конфигурируется в командной строке или в файле конфигурации. Если пользователь использует агента аутентификации, то подключение к агенту автоматически осуществляется на дистанционной стороне, если только это не будет запрещено в командной строке или в файле конфигурации Базовые опции -А Если пользователь пользуется услугами агента аутентификации, переносит аутентификацию на дистанционную сторону. Соответствующая опция ForwardAgent (принимает значение yes) имеется в файле конфигурации. -с blowfish | 3des | des Выбирает шифр (по умолчанию 3dcs), используемый тля шифрования сеанса. -i identity file Определяет файл для RSA и DSA, из которого будет ечнгывлться секретный ключ. По умолчанию - это $IIOME/.ssh/idcntitj (для протокола SSH версии 1). -а За11решаетнереда1ШТьау|е|111|фикацИ10подключе1ШЙаген1>надис1.ш- ционной стороне. Соответствующая опция KorwardARcnt (принимаем значение по) имеется в файле конфш ypjiiini.
660 II Команды -1 login пате Указывает имя пользователя для регистрации на дистанционной машине. Соответст вующая опция User имее гея в файле конфигурации. -о option Задает опции в формате, применяемом в файле конфшурации, что полезно для опций, не имеющих отдельного флага в командной строке. -р port Задает пор г (по умолчанию - 22) для подключения к дистанционному хосту. Соответствующая опция Port имеется в файле конфигурации. -х Запрещает прохождение X11 на дистанционный хост. Соответствующая опция ForwardXll(npnHHMaeT значение по) имеется в файле конфигурации. -X Разрешает прохождение XII. Соответствующая опция ForwardXll (принимает значение yes) имеется в файле конфигурации. -F con/igfile Указывает альтернативный пользовательский файл конфигурации (по умолчанию $HOME/.ssh/config). Если файл конфигурации задан в командной строке, общесистемный конфигурационный файл /etc/ssh/ ssh_conflg будет проигнорирован. -1 Заставляет ssh использовать протокол лишь версии 1. -2 Заставляет ssh использовать протокол лишь версии 2. -4 Заставляет ssh использовать только адресацию IPv4. -6 Заставляет ssh использовать только адресацию IPv6. -С Запрашивает сжатие всех данных, включая stdin, stdout, stderr, информацию для прохождения подключений XI1 и TCP/IP. Алгоритм сжатия тот же, что использует giip. -е сА|Ас/(|попе Устанавливает управляющий символ для сеансов с pty (терминалом). По умолчанию принят символ —. Управляющий символ распознается только в начале строки. Управляющий символ с последующей точкой закрывает соединение, управляющий символ с последующей комбинацией CTRL+Z вызывает "зависание" соединения, идущие два подряд управляющих символа трактуются как один. Установка управляющего символа в значение попе, отменяет любые управляющие символы. -L porf.hosf.hostport Указывает заданный порт port на локальном клиентском хосте, информация через который должна быть препровождена на заданный хост host и порт hostport на дистанционной машине. В этом случае SSH-сервер. с которым у вас установлено шифрованное соединение, вовсе не является конечной адресуемой машиной, через него лишь должна проследовать информация для указанного адресата (см. пример). Примеры Применение опции -L лучше всего рассмотреть на конкретном примере. SSH-кчи- ент внешней сети может получить доступ к Web-ccpiicpy plum (входящий норг SO) частной внутренней сети компании лишь через SSH-сервер pear. На клиентской машине в целях безопасности лучше всего нспольчовшь порт с высоким значением номера (свыше 30000). Вот так будет выглядеть командная с iрока:
II. Команды ССл t ssh -L 30002:р1шп:80 pear При адресации IPv6 допускается альтернативный синтаксис: f ssh -L 30002/plum/80 pear ssh-keygen генерирует и управляет ключами аутентификации. ssh-keygen [-q][-b bits] -t type [-N aewpassphrase] [-C comment] |-f output_keyfile] ssh-keygen -p [-P old_passphrase] [-N new_passphrase]l-f key file] ssh-keygen -i [-f inpvtkeyfile] ssh-keygen -e [-£ input_keyfile] ssh-keygen -y [-£ inputkeyfile] ssh-keygen -с [-Р passphrase] [-C comment][-f keyfile] ssh-keygen -1 [-f input keyfile] ssh-keygen -B [-f input_keyfile] ssh-keygen -D reader ssh-keygen -U reader [-f input_keyfile] Команда ssh-keygen создает, управляет и преобразовывает ключи для ssh в случае использования последней протокола SSH версии 1 (RSA-ключи) и SSH версии 2 (RSA или DSA-ключи).Обычно ssh-keygen генерирует секретный ключ и запрашивает имя файла, в котором его хранить, а открытый ключ сохраняет в файле с тем же именем, но с расширением .pub. Системный администратор также может использовать эту команду для создания ключей хоста. В процессе генерации ключа запрашивается кодовая фраза, которая в оболочке безопасного соединения по имени ssh является эквивалентом пароля. Эта фраза может быть строкой произвольной длины (пробел указывает на Отсутствие кодовой фразы) и содержать прописные и строчные буквы, знаки пунктуации, числа, не алфавитно-цифровые символы. В дальнейшем кодовая фраза может быть изменена. Ключи хоста должны иметь пустую кодовую фразу. Опции -b bits При создании указывает количество битов в ключе, минимальный размер составляет 512, а принятый по умолчанию -1024. Ключи большего размера не усиливают безопасность, а лишь приводят к замедлению работ ы. -с Меняет комментарий в файлах секретных и открытых ключей. Эта опция лишь поддерживается для ключей RSA1. ssh-keygen приглашает ввести имя файла с секретными ключами, кодовую фрлу. если ключ имеет таковую, и jarcM новый комментарий.
662 II Команды -f keyfile Считывает файл секретного или открытого ключа в формате SECSH Public Key, распечатывая последний на стандартный вывод. Эта опция разрешает экспорт ключей для использования некоторыми коммерческими реализациями SSH. Указывает имя файла с ключом. Считывает файл с ключом в SSH2-coBMecrHMOM формате и также в формате SECSH Public Key. Затем распечатывает на стандартный вывод OpenSSH-совместимый секретный или открытый ключ. Эта опция разрешает импорт ключей из некоторых коммерческих реализаций SSH. Показывает "отпечаток" указанного файла открытого ключа. Также поддерживаются секретные ключи RSA1. Для RSA и DSA ключей программа ssh-keygen пытается найти совпадающий файл открытого ключа и распечатывает его "отпечаток". Вместо создания нового секретного ключа требует замены кодовой фразы секретного ключа, ssh-keygen приглашает указать файл секретного ключа, старую кодовую фразу и дважды новую кодовую фразу. Устанавливает режим минимального вывода. Считывает секретный файл формата OpenSSH и распечатывает на стандартный вывод открытый ключ OpenSSH. Указывает тип создаваемого ключа: rsal для протокола версии 1 и rsa или dsa - для протокола версии 2. Делает обзор указанного файла секретного или открытого ключа. Обеспечивает новым комментарием. Загружает открытый ключ RSA, хранимый в смарт-карте (интеллектуальной карте), в reader. -N new_passphrase Обеспечивает новой кодовой фразой. -Р passphrase Обеспечивает кодовой фразой (старой). -U reader Выгружает существующий секретный ключ RSA в смарт-карту в reader. Файл $HOME/.ssh/identity удостоверяет личность пользователя по протоколу RSA версии 1. По умолчанию этот файл предлагается для секретного ключа. Этот файл не может быть прочтен никем другим кроме данного пользователя. Файл $HOME/.ssh/id_dsa удостоверяет личность пользователя по протоколу DSA версии 2. По умолчанию этот файл предлагается для секретного ключа. Этот файл не может быть прочтен никем другим кроме данного пользователя. Файл SHOME/.ssh/idrsa удостоверяет личность пользователя по протоколу RSA версии 2. По умолчанию этот файл предлагается для секретного ключа. Этот файл не может бы гь прочтен никем другим кроме данного пользователя. Примеры Пользователь misha сгенерировал себе пару ключей (открытый и секретный), используя команду ssh-keygen: -q -У -t type -В -С comment -D reader
II. Команды 663 S Bsh-keygen -t rsa -b 1024 Generating public/private rsa key pair. Enter file in which to save the key (/home/misha/.ssh/idrsa): Created directory '/home/misha/.ssh '. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/misha/.ssh/id rsa. Your public key has been saved in /home/misha/.ssh/id_rsa7pub. The key fingerprint is: d9:20:3c:57:ba:8e:aa:lb:18:df:e0:e4:ee:7e:da:38 mishap localhost.localdomain В приведенном примере была создана пара 1024-разрядных ключей по методу RSA (RSA-шифрование от фирмы RSA Labs, предполагает алгоритм асимметричного шифрования с открытыми ключами), где секретный ключ сохранен в файле SHOME /.ssh/ idrsa, а открытый - в $HOME/.ssh/id_rsa.pub. Для дополнительной зашиты в SSH поддерживается кодовая (сквозная) фраза (passphrase), используемая для шифрования секретного ключа. По соображениям безопасности файл секретного ключа может быть прочитан только самим пользователем, тогда как открытый ключ предназначен для свободного распространения и хранится в удобочитаемом формате. $ cd .ssh $ cat id_rsa.pub ssh-rsa AAAAB3NzaClyc2EAAAABTwAAAIEb74kYc8gB97v0tvNxXgs9pvew37IX75h/ WTcylMoLls+d9VMXpmXYYVk20t57IDWtKOWfwN2qULeORLtSIbt/ G3jrRJf9ugyDyHJztEF/ 5pok+Kf9zJVF3IZmvyub87YDIdXuygnl3BxJgrmBrSq9wt0egmJGWahd/P4K3fKx6Js= misha@localhost.localdomain $ startinnfeed - запускает innfeed, установив для нее при этом setuid суперпользователя. Си таксис startinnfeed innfeed-options Устанавливает все ресурсы без ограничений: число открытых файлов, память. Затем выполняет запуск innfeed с указанными опциями innfeed-options. StartX - инициализирует сеанс системы X. Синтаксис startx [[client] option...][— [server] option...] Сценарий startx приходи г вместе с дне iрибут иоом X11. в нем содержи гея обращение к xinit пользовательскому интерфейсу для запуска системы \ Window, inn просто X. Профамма xinit обычно запускается без аргументов. Хотя сушестуют иекчю чения. Если выбирается глубина гше i нос hi, го приходится передави п. Jpi умен г серверу. Опция в лом случае имеет префикс — (дна дефиса).
6b4 II Команды Чтобы определить запускаемого клиенш client, сценарии startx прежде всего просматривав! файл, называемый .xiiiitrc в исходном каталоге пользователя. Если такой не обнаружен, используется файл xiiiitrc из катало! а, содержащего библиотеку с программой xinit. Хотя опция client из командной строки перекрывает все ранее упомянутые файлы. Чтобы определить запускаемый сервер server, сценарий startx ищет файл .xserverrc в исходном каталоге пользователя. Если таковой не найден, использует файл xserverrc из каталога, содержащего библиотеку с программой xinit. Опция server из командной строки перекрывает все ранее упомянутые файлы. .xiiiitrc — это обычный сценарий оболочки, запускающий несколько клиентов в соответствии с пожеланиями пользователя. Если этот сценарий завершается, startx также завершает работу сервера и другие сеансы. Большинство клиентов, запускаемых .xiiiitrc, работают как фоновые процессы. Только последний клиент должен быть запущен в разделе переднего плана. Когда он завершается, завершается весь сеанс. Пользователи часто выбирают менеджера сеанса, оконного менеджера или xterm (виртуальный терминал) в качестве magic-клиента. Пример В сценарии xinitrc последним обычно вызывается оконный менеджер. Его последняя строка может иметь вид exec fvwm или exec rwm. Stat - распечатывает содержимое полей дескриптора файла. Синтаксис Stat filename... Пример $ stat vvv2 File: nvvv2n Size: 60 Filetype: Regular File Mode: (0664/-rw-rw-r—) Uid: ( 501/ misha) Gid: ( 501/ misha) Device: 3,5 mode: 6759 Links: 1 Access: Tue Aug 22 23:20:11 2000(00042.00:13:38) Modify: Tue Aug 22 23:16:34 2000(00042.00:17:15) Change: Tue Aug 22 23:16:34 2000(00042.00:17:15) $ statserial предоставляет информацию о последовательных портах. Синтаксис statserial [-n|-d|-х)[device-name] statserial отображает таблицу сишалон пи стандартных °-pin пли 25-pin noeneiiv ва тельных портах и указывает состояние линий с подтверждением сия ш (handshaking).
II. Команды 665 Необязательный парамегр device-name преде тавляет собой полное имя файла устройства последовательного порта, но умолчанию- /dev/ttySl. Утилита statserial полезна для выявления проблем с последовательными линиями или модемами. Опции -п Запрещает постоянную работу в цикле (так обычно работает statserial). Работу в цикле можно прервать, используя комбинацию клавиш Ctrl+C. "d Печатает статус модема в виде десятичного числа. Биты шифруются следующим образом: + + +—+—+—+—+—+—+—+ | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | + + + + + + + + + + |dsr|ri |dcd|cts|xxx|xxx|rts|dtr|xxx| +—+—+—+—+—+—+—+—+—+ -х Печатает статус модема в виде шестнадцатеричного числа. Пример # statserial /dev/ttySO Device: /dev/ttySO Signal Pin Pin Direction Status Full Name (25) (9) (computer) Name FG 1 - - - Frame Ground TxD 2 3 out - Transmit Data RxD 3 2 in - Receive Data RTS 4 7 out 1 Request To Send CTS 5 8 in 1 Clear To Send DSR 6 6 in 1 Data Set Ready GND 7 5 - - Signal Ground DCD 8 1 in 0 Data Carrier Detect dtr 20 4 out 1 Data Terminal Ready RI 22 9 in 0 Ring Indicator StfclCG - трассирует системные вызовы и сигналы. Синтаксис strace t-df f hiqrtttTvxx] l-acolumn] [-eexpr]... [-ofile] [-ppid]. -. [-Bstrsize] [-vusername] [ command [ arg— ] ] strace -c [-eexpr]... {-Ooverhead] [-Ssortby] [command [arg...]] В простейшем случае strace запускает предложенную команду command с ее аргументами arg. А затем фиксирует возникшие системные процессы и все получаемые ими сигналы. В стандартный файл ошибок или указанный файл заносится каждый системный вызов, его аргументы в скобках и возвращаемое значение. strace- очень полезный для отладки диагностический инструмент.
666 II Команды Опции -с Для каждого системного вычова нодсчшывае! время, число вызовов и ошибки, а по завершении программы создает отчет. -d Выводит некоторые отладочные сообщения программы strace в стандартный файл ошибок. -f Грассирует дочерние процессы, созданные текущими трассируемыми процессами как результат сие темного вызова fork (разветвление процессов). -ff Если действует опция -ofile, то каждая трасса записывается в файл jile.pid, где pid - числовой идентификатор процесса. -h Распечатывает опции программы. -i Во время системного вызова печатает указатель команд. -q Запрещает выводить сообщения о присоединениях, отсоединениях и т.п., что будет выполняться автоматически, если вывод направлен в файл. -г Печатает относительную временную метку для каждого системного вызова. -t Для каждой строки трассы создает префикс, содержащий время дня. -tt Для каждой строки трассы создает префикс, содержащий время дня с точностью до микросекунд. -ttt Распечатывает время (см. опцию -tt), содержащее количество секунд от начала эпохи. -Т Показывает время, затраченное на системные вызовы. Отмечает промежуток времени между началом и концом каждого системного вызова. -v Подробно информирует о системных вызовах. -V Информирует о версии strace. -х Выводит в шестнадцатеричном виде все строки, формат которых отличен от ASCII, -хх Печатает все строки в шестнадцатеричном формате. -acolumn Выводит возвращаемые значения в виде столбца указанного размера, по умолчанию - 40. -еехрг Определяет, какие события и как трассировать. Формат выражения, определяющего трассировку, выглядит следующим образом: [qualifier=] [! ] value 1 [, value!] ... Параметр expr определяет одно из выражений для qualifier (для описателя): trace (по умолчанию), verbose, raw, signal, read или write; a value - зависящий от описателя qualifier символ или номер. -е trace=.?e/ Трассируег только указанный набор системных вызовов. По \ молчанию принято tracc=all (вес наборы системных вызовов). -е trace=file Трассируег все системные вызовы, принимающие имя файла в качестве аргу мен i a.
II. Команды (*.fJl -е trace=process Трассирует все системные вызовы, обуславливающие управление процессом, что полезно для 01слеживания разных шшов процесса- fork w ait или exec. -е Uace=network Трассирует все сетевые системные вызовы, -е trace=signal Трассирует все сигналы, относящиеся к системным вызовам -е trace=ipc Трассирует все системные вызовы, относящиеся к IPC -е abbrev=se/ Избавляет указанный вывод от печати каждого члена больших структур. По умолчанию принято abbrev=all. Опция -v дает эффект abbrev=none. -е verbose=ser He упоминает о структурах для указанного набора системных вызовов. По умолчанию verbose=all, т.е. для всех системных вызовов упоминаются их структуры. -е raw=se< Распечатывает все аргументы указанного набора системных вызовов в шестнадцатеричном формате, что имеет смысл, если пользователь хочет знать актуальное числовое значение аргумента или не доверяет декодированию. -е signaNse/ Трассирует только указанное подмножество сигналов, по умолчанию signaNall - (все сигналы трассируются). -е read=.ser Для дескрипторов файлов, перечисленных в указанном наборе, создает полный дамп всей считанной информации в шестнадцатеричном формате и формате ASCII. Следует отметить, что эта возможность не зависит от обычной трассировки системного вызова read, который управляется опцией -е trace=read. -е write=ie« Для дескрипторов файлов, перечисленных в указанном наборе, создает полный дамп всей записанной информации в шестнадцатеричном формате и в формате ASCII. Эта возможность не зависит от обычной трассировки системного вызова write, который управляется опцией -е trace=write. -ofile Вместо стандартного файла ошибок записывает трассу в указанный файл. Использует file.pid, если задана опция -ff. -Ooverhead Устанавливает верхний предел в микросекундах для трассировки системных вызовов. -ppid Подключается к процессу с указанным идентификатором и начинает его трассировку, которая может быть прервана в любое время с помощью Ctrl+C. Многочисленные опции -р могут применяться для подключения к разным процессам (до 32) в дополнение к команде command, последняя не является обязательной, если хотя бы раз задана опция -р. -sslrsize Указывает максимальный размер распечатываемой строки; по >молчанию - 32.
668 II Команды -Ssorlby Сортирует вывод racroi рамм, распечатываемых с помощью опции -с по указанным критериям. Параметр sortby принимает такие значения, time по времени calls по вызовам name по именам nothing (по умолчанию по времени) -uusername Запускает команду по идентификатору пользовагеля и группы, а также по дополнительным группам username. Некоторые возможные трассировки доступны лишь пользователям с полным набором привилегий суиериользователя. Имеег смысл проинсталлировать специальную версию strace с режимом nvsr-xr - для суперпользователя и группы strace, членам которой разрешается производить трассировку. Пример s strace -onnn -р943 $ В файл nnn заносится трасса процесса с идентификатором 943. strip - отбрасывает из объектного файла все идентификаторы. strip [-F bfdname]—target=jbfdname] [-1 bfdname\—input-target=bfdname| [ -O bfdname | —output-target=Jb/dname] [ -R section-name | —remove-section=sectionname] [ -s | —strip-all ] [-S|-g|—strip-debug][—strip-unneeded][-x|—discard-all] (-X j —discard-locals ] [ -K symbolname] —keep-symbol=sjTnJboIname] [-N symbolname|—strip-symbol=sjTnJboiname] [-ofHe] [-p|—preserve-dates][-v|—verbose][-v|—version]]—help] objfile... Отбрасывает идентификаторы из объектных файлов objfile, в список объектных файлов могут также включаться архивы. Опции -F bfdname, —iargei=bfdname Рассматривает оригинальный файл objfile как файл в формате bfdname и перезаписывает его в том же формате. —help Выводит информацию об опциях программы и завершает ее работу. -I bfdname, — input-target=i/i/nome Рассматривает оригинальный файл objfile как файл с объектным кодом в формате bfdname. -О bfdname, —output-target=/)/£//>o»i<;' Замещает objfile файлом в выходном формате bfdname.
II. Команды 669 -R sectionname, —remove-section^jec/ionnume Удаляет из выходного файла секцию sectionname. Можно неоднократно использовать эту опцию. -s, —strip-all Удаляет все идентификаторы. -g, -S, —strip-debug Удаляет только отладочные идентификаторы. --strip-unneeded Убирает все идентификаторы, которые не понадобятся в процессе настройки. -N symbolname, —slrip-symho\=symbolname Удаляет из исходного файла символ (идентификатор) symbolname. Можно неоднократно использовать эту опцию. -о file Принимает усеченный вывод в файл file вместо замещения существующего файла. Когда используется эта опция, может быть указан только один аргумент objfile. -p. —preserve-dates Сохраняет режим доступа и дату модификации файла. -х, —discard-all Удаляет все неглобальные символы (идентификаторы). -X, —discard-locals Удаляет все локальные символы (идентификаторы), сгенерированные компилятором. Их имена обычно начинаются с L или с точки. -К symbolname, —keep-symbol=symboIname Копирует из исходного файла только символ (идентификатор) symbolname. Можно неоднократно использовать эту опцию. -v, verbose Создает подробный вывод: распечатывает все измененные объектные файлы. В случае архивов с помощью strip -v распечатывает все члены архива. -V, —version Выводит информацию о версии программы и завершает ее работу. stty выводит и еняет установки те§минала. К Синтаксис stty [option][setting] stty [option] Позволяет поменя гь установки selling вашего терминала. Если никаких > становок не задано, выводи! скорость терминальной линии в бодах. номер линии и >ci.iiiohkii терминала, которые отличаются от назначенных командой stty sane.
о/и II Команды Опции -a, —all Распечатывает все текущие установки в удобочитаемом формате. Эта опция не может быть использована совместно с какими-либо установками. -F device, —file device Устанавливает линию, ожрываемую файлом устройства device, вместо tty-линии, подключенной к стандартному вводу. -g, --save Распечатывает все текущие установки в формате, который можно использовать как аргумент для другой команды stty, что позволяет восстановить текущие характеристики терминала. Данная опция не применяется совместно с какими-либо установками. Многие установки могут быть отключены, если перед ними имеется знак минус. Управляющие установки parenb Генерирует бит четности на выходе и ожидает бит четности на входе. parodd Устанавливает проверку на нечетность, даже если перед установкой стоит знак минус. cs5, cs6, cs7, cs8 Устанавливает количество информационных бит в передаваемых словах, соответственно 5, 6, 7 или 8. hup, hupcl Посылает сигнал hangup (см. приложение I), когда последний процесс закрывает tty. Может быть отрицательной. cstopb Использует два стоп-бита на символ или один, если установка отрицательна. cread Разрешает прием ввода. clocal Отключает управляющие сигналы модема. crtscts Разрешает RTS/CTS (запрос на передачу для синхронных коммуникационных терминалов, целиком обеспечивающих синхронную передачу массива информации, обрамленного управляющими символами) управление потоком данных. Входящие установки ignbrk Игнорирует символы прерывания (клавиши прерывания), brkint Генерирует сигнал прерывания при нажатии клавиши прерывания, ignpar Игнорирует ошибки четности, parmrk Отмечает ошибки четности. inpck Разрешает проверку входного потока на четность, istrip Очищает наивысший (8-ой) бит входных символов, inlcr Преобразует символ newlinc (новой строки) в символ вошрага каретки, igncr Игнорирует символ возврата каретки.
II. Команды icrnl Преобразует символ возврата каретки в newline ixon Разрешает XON/XOFF (старте тонная передача) управление потоком данных (Ctrl+S/Ctrl+Q). ixoff, tandem Разрешает посылать стоп-символ, когда входной буфер системы почти полон, и старт-символ, когда буфер становится почти пустой, iuclc Преобразует прописные символы в строчные. ixany Разрешает любому символу перезапуск вывода, только если стартовый символ отрицательный. imaxbel Разрешает звуковой сигнал и не разрешает освобождать входной буфер, если очередной символ поступил, когда входной буфер полон. Исходящие устан opost Выполняет дополнительную обработку вывода. oleue Преобразует строчные символы в прописные. ocrnl Преобразует символ возврата каретки в newline. onlcr Преобразует символ newline (новой строки) в символы возврата каретки и newline. onocr He выводит символы возврата каретки в первом столбце. onlret Использует символ newline в качестве символа возврата каретки. ofill Использует символы заполнения для создания задержек. ofdel Для заполнения использует символы удаления вместо нулевых символов. nil, nlO Определяет стиль задержки символа newline. сгЗ, cr2, crl, сгО Определяет стиль задержки символа возврат каретки. tab3, tab2, tabl,tabO Определяет стиль задержки символа горизонтальной табуляции. bsl, bsO Определяет стиль задержки символа возврата на один символ. vtl, vtO Определяет стиль задержки символа вертикальной табуляции. ff 1, ffO Определяет стиль задержки символа перевода (прогона) страницы. Локальные установки isig Разрешает специальные символы interrupt (прерывание), quit (выход) и suspend (перевод терминала в состояние ожидания). icanon Разрешает специальные символы erase (удаление последнего набранного символа), kill (удаление текущей строки), werasc (удаление последнего набранного слова), rprnt (перерисовка текущей сiроки). iexten Разрешает специальные символы, не соответствующие стандарп POSIX. echo Отображает входные символы.
672 II Команды echoe, crterase Отображаег символы удаления и виде backspace-пробел-ЬаскБрас*. echok Отображаег newline (символ новой строки) после символа kill. echonl Отображает newline, даже если не отображает другие символы. noflsh Отменяет освобождение информационного буфера после специальных символов interrupt и quit. xcase Разрешает прием и вывод прописных символов в виде их строчного эквивалента, которому предшествует обратный слэш. Действует, если задана установка icanon. tostop Останавливает фоновые задания, которые пытаются писать на терминал. echoprt, prterase Отображает уже удаленные символы, заключая их между обратным и прямым слэшами. echoed, ctlecho Отображает управляющие символы в формате ЛС. echoke, crtkill Отображает специальный символ kill путем удаления каждого символа в строке, как предполагают установки echoprt и echoe, а не как действуют установки echoctl и echok. Пример # stty sane t Восстанавливает установки терминала, задаваемые по умолчанию. SU - позволяет одному пользователю временно стать К др гим пользователем. Синтаксис su [ option]... [ user [ arg\ — ] Позволяет какому-либо пользователю временно стать пользователем user и запускать команды в интерактивной оболочке, под его подлинным и действующим идентификаторами, идентификатором основной группы и дополнительных групп. Если в командной строке никакой пользователь не указан, позволяег даже стать суперпользователем при условии знания его пароля. По умолчанию su не меняет текущий каталог, а лишь устанавливает переменные окружения НОМЕ и SHELL на основе информации файла паролей для указанного пользователя user. По умолчанию оболочка не является оболочкой регнет рации. Любые дополнительные аргументы arg передаются оболочке. Опции -с command, —command=co»iijinnrf Передает текущей оболочке команду вместо того, чтобы зап)спиь интерактивную оболочку.
II. Команды 673 -f. -fast Передает оболочке опцию -f, ч 10 имеет смысл лишь для оболочки типа «.sh и ли tesh. для которой подобная опция запрещает чтение стартового файла .cshrc. -, -1. -login Ус ганавливает в качестве текущей оболочки оболочку регистрации, что будет' означагь следующее: переустанавливает все переменные окружения кроме TERM, HOME, SHELL, USER и LOGNAME, переменную PATH устанавливает в значение по умолчанию, меняя каталог на исходный каталог пользователя user, а также заставляет оболочку прочесть ее стар говый файл. -m, -p, —preserve-environment Не меняет переменные окружения HOME, USER, LOGNAME, SHELL. Запускает оболочку, заданную переменной SHELL, а не в файле паролей /etc/passwd. -s shell, ~she\l=shelt Запускает указанную оболочку shell вместо заданной в файле /etc/passwd. Приме sudo S ■ root@localhost.localdomain: /root j [mishaG local host misria]$ su -1 i Password: ! [rootElocalhost /root]» I выполняет команды с привилегиями других пользователей. Синтаксис sudo -v|-h|-l|-I,|-v|-k|-K|-s|[-B][-P][-S][-b]|[-p prompt] [-U username\luitf] command Команда sudo разрешает уполномоченному пользователю выполнять команды в качесгве суперпользователя или другого пользователя, как определено в файле sudoers. По умолчанию sudo требует, чтобы пользователи идентифицировали себя с помощью пароля (своего собсгвенного, а не суперпользователя). Команда sudo выполняет исчерпывающую регистрацию и разрешает многие адми- нисгративные проблемы, не предоставляя излишних привилегий. После выполнения регистрации пользователь может использовать sudo без пароля в течение короткого отрезка времени (5 минут, если только это значение не будет перекрыто в файле sudoers). Как правило, sudo иснользуегся для делегирования полномочии в следующих случаях: • 0,1ера™рамРезсрв,югоки,шроианиянсо6ходнмы.1рпв..легиисупериапьадВателя. чтобы выполнить команды dump и restore. • Админисра.орам БД .рсбуегся переза.рузип, СУБД-серверы, но у них нег пароля суисриоль шва геля (чго очень правильно).
674 II Команды • Необходимо поручить младшему админисграюру создание учетных записей пользователей, не предоставляя ему пароль сунернользователя. • Системному администратору требуется осущесгвшь аудит команд, выполняющихся с привилегиями сунернользователя. О ИИ -V Выводит информацию о версии программы и завершает ее. -1 Печатает список команд, разрешенных и запрещенных для данного пользователя на текущем хосте. -L Распечатывает параметры, которые могут быгь установлены в строке Defaults (часть файла sudoers), с кратким описанием каждого. Эта опция полезна в сочетании с командой grep. -h Выдает справку по опциям команды и завершает ее. -v Обновляет временную метку пользователя, если необходимо. Расширяет таймаут sudo на следующие 5 минут, но не запускает никакую команду. -к Лишает законной силы временную метку пользователя. При следующем запуске sudo запросит пароль. -К Полностью удаляет временную метку пользователя. -Ь Запускает sudo в фоновом режиме. -р prompt Разрешает перекрывать принятое по умолчанию приглашение пароля и использовать пользовательское приглашение. Выражение %и в приглашении пароля заменяется пользовательским регистрационным именем. %h - именем локального хоста. -u username\#uid Приказывает запустить указанную команду command в качестве пользователя username. Вместо имени пользователя можно указать #uid - идентификатор пользователя. -s Запускает оболочку, указанную в переменной окружения SHELL (если установлена) или в /etc/passwd. -Н Устанавливает переменную окружения НОМЕ в значение домашнего каталога целевого пользователя (по умолчанию суперпользователя), как указано в /etc/passwd. По умолчанию sudo не модифицирует НОМЕ. -Р Сохраняет неизменным вектор групп данного пользователя. По N молчанию sudo инициализирует вектор групп как значение списка гр> ни. в которых числится целевой пользователь. -S Считывает пароль со стандартного ввода вместо терминального устройства. Указывает команде sudo конец api умен гон командной строки. Файл конфигурации утилиты sudo под названием /ctc/sudocrs ре'иктнр\ется с помощью специальной команды visiido. Подобно тому, что делает команда cruntab с
II. Команды 675 файлами crontab, команда visudu проверяет сишаксис файлов sudoers и сообшает о любых ошибках в конфигурации sudo. Конфшурационные файлы sudoers состоят из трех следующих основных частей: псевдонимы, принятые но умолчанию установки, пользовательская спецификация. В разделе aliases (псевдонимов) имеется возможность определить поименные списки пользователей, хостов и команд для последующих ссылок. Сущесшуют четыре шпа списков псевдонимов: • UserAlias - пользователи, которым разрешено выполнять команды с помощью sudo • RunasAlias - пользователи, в качестве которых разрешено выполнять команды • HostAlias - хосты, на которых пользователям разрешено выполнять команды с помощью sudo • CmndAlias - команды, которые разрешено выполнять с помощью sudo Псевдоним определяется следующим образом: Alias_Type Name = iteml, item2, ... , xtemN Здесь Alias_Type — это тип псевдонима, а в качестве Name указывается список значений, зависящих от типа псевдонима. В разделе defaults можно изменить принятые по умолчанию установки утилиты sudo. У sudo слишком много принятых по умолчанию установок, чтобы приводить здесь полный их список, однако к некоторым наиболее интересным относятся следующие: • timestamptimeout - промежуток времени между последовательными запросами пароля • logfile - маршрут к файлу регистрации, в который посылаются сообщения (по умолчанию они отправляются в syslog) • mailto - адрес для отправки сообщений об ошибках и предупреждающих сообщений (по умолчанию подобные сообщения посылаются суперпользователю) В разделе user specification (пользовательская спецификация) фактически указываются те команды, которые разрешено выполнять пользователю, а также в качестве какого пользователя их разрешено выполнять: ID HOST = (USER) COMMANDS Примеры Вот так могут выглядеть некоторые строки в файле /ctc/sudocrs: UserAlias ADMINS=steve,olga,ann UserAlias WEBMASTERS=mike,george UserAlias DBAS=chad,kevin Определены списки администраторов, Web-мастеров и админшмраторов БД. С помощью следующей строки можно определить список команд, которые разрешено выполнять оператору резервного копирования: Cmnd Alias BACKUP COMMANDS =/usr/sbin/dump, /usr/abin/restore, /usr/bin/tar
676 И Команды Добавив глкне строки, можно запускать Apache на нескольких Web-серверах- UserAlias WEBMASTERS=mike,george RunasAlias ADMm_ACCOUNTS=root, operator Host-Alias WEBSERVERS=pear,plum,lemon CmndAlias WEBPROGS=/usr/local/apache/bin/ WEBMASTERS WEBSERVERS=(ADMIN_ACCOUNTS) /usr/local/apache/bin/ Обычный пользователь может выполнить гакую команду: $ sudo fdisk -l /dev/hdal SUtTl подсчитывает контрольную сумму и количество блоков в «айле. Опции sum [option] — [file] Для каждого заданного файла file определяет контрольную сумму и подсчитывает количество блоков в нем. Опции -г Применяет алгоритм подсчета контрольных сумм, принятый в BSD, используются блоки размером 1Кбайт. -s, —sysv Применяет алгоритм подсчета контрольных сумм, принятый в System V, используются блоки размером 512 байт. --help Выводит список опций и завершает программу. --version Выводит информацию о версии программы и завершает ее. Если в командной строке никакой файл не указан или вместо имени файла стоит дефис, считывает стандартный ввод. При ер $ sum -s гаЫ35 6892 5 гаЫ35 Ssum -r гаЫ35 34711 3 $ SupGrPrOD© распознает, идентифицирует и опро- К. бует установленное видеооборудование компьютера. Синтаксис SuperProbe [-verbose][-nol6][-excl Jist]I-masklO][-order Hat] [-noprobe list][-bioe basel[-no_biosl[-no_dac][-no_mem][-info]
II. Команды 677 SuperProbe - что иршрамма, которая пытае1ся определить шн видеооборудования, инс галлированного в F lSA/ISA/VLB-системах, и проверить в разных комбинациях известные регистры. SuperProbe идентифицирует видеокарту компьютера и определяет объем видеопамяти. Опции -verbose -по 16 -exel list -mask 10 -order list -noprobe list -bios base -nobios -nodac -nomem -info flpi пер Подробно информирует о ходе опробования. Не пытается использовать порты ввода/вывода, требующие 16-битную адресацию. Для шины ISA, например, использует только 10 бит. Не пытается получить доступ к поргам ввода/вывода, перечисленным в списке list. В указанный список входят разделенные запятыми порты или диапазоны портов ввода/вывода. Порты могут задаваться в десятичной, в восьмеричной (номера начинаются с 0) или шестнадцатерич- ной (номера начинаются с Ох) нотации. Использует 10-битную адресацию портов ввода/вывода. Это важно для старых 8-битных и некоторых 16-битных видеокарт. Указывает наборы чипов для тестирования и его порядок. Параметр list включает разделенный запятыми список имен чипов. Этот список перекрывает встроенный по умолчанию список тестирования. Указывает, какие наборы чипов программа SuperProbe не будет тестировать. Параметр list - это список разделенных запятыми наименований чипов. Указывает базовый адрес в BIOS для видеооборудования. По умолчанию используется ОхСОООО. Запрещает чтение BIOS для видеооборудования. Запрещает определять тип RAMDAC, если определена видеокарта VGA или SVGA. Запрещает определять объем инсталлированной видеопамяти. Распечатывает список всего известного программе видеооборудования. Вы можете запустить SuperProbe без каких- либо параметров, переназначив вывод программы во временный файл. Si root©locelhost.localdomain:/root |,_|,о.,х Файл Правка Settings Справка OootGlocalhost /root]* SuperProbe>/tmp/f i le WARNING - THIS SOFTWARE COULD HANG YOUR MACHINE. READ THE SuperProbe.l MANUAL PAGE BEFORE RUNNING THIS PROGRAM. INTERRUPT WITHIN FIVE SECONDS TO ABORT! [rootGlocalhost /root]» I
678 II Команды swapoff запрещает применять указанные устройства или файлы в качестве области своппинга Синтаксис swapoff [-h][-V] swapoff -a swapoff specialfile... Отключаемые устройства или файлы своппинга задаются аргументом specialfile On ии -h Выводит подсказку о применении команды. -V Выводит информацию о версии swapoff. -а Отключает все устройства своппинга, описанные в файле /etc/fstab. SWapOll - разрешает применять указанные устройства или файлы в качестве области своппинга. сие swapon [-h][-V] swapon -a [-v] swapon [-v][-p priority] specialfile... swapon [-s] Обычно swapon вызывается автоматически из /etc/rc, делая все устройства подкачки доступными. Разрешает применять specialfile в качестве области своппинга. Опции -h Выводит подсказку о применении команды. -V Выводит информацию о версии swapon. -s Информирует об устройстве иодкачкн. Опция доступна, начиная с ядра 2.1.25. -а Делает доступными все устройства из /etc/fstab. имеющие метку sw (или swap). -р priority Указывает приоритет для swapon, значение priority находи гея между О и 32767. Добавьте в поле опций соответствующего элемента файла /etc/fstab выражение pri=va/i/e (значение приоритета) для использования с командой swapon -a. -v Подробно комментирует происходящее. Нельзя использовать swapon для файла с "дырами": требуется единый участок i>ei сбойных блоков.
II. Команды SyriC сбрасывает буфера файловой системы нтаксис sync [option] Записывает измененные блоки на диск, обновляет суперблок. ЦИ1 —help Отображает список опций и завершает программу, —version Выводит информацию о версии программы и завершает ее. Ядро держит данные в памяти (в буферах) во время операций чтения и записи на диск, что значительно увеличивает производительность системы. Но во время сбоя системы данные могут быть бесповоротно потеряны, и в результате повреждена сама файловая система. Команда sync записывает содержимое буферов на диск. sysctl настройка параметров ядра во в емя выполнения. Синтаксис sysctl [-n] [-e] variable sysctl [-n] [-e] -w variable=value sysctl [-n] [-e] -p filename sysctl [-n] [-e] -a sysctl [-n] [-e] -A С течением времени возникает необходимость внести изменения в некоторые параметры ядра. До появления sysctl приходилось вносить изменения в конфигурацию ядра, а затем его перекомпилировать. Команда sysctl позволяет менять параметры работающего ядра через файловую систему /ргос. И хотя под /ргос мы как бы можем видеть группу каталогов и файлов, но фактически это лишь представление частей ядра операционной системы. Можно считывать и записывать значения в эти "файлы", обращаясь к ним, как к переменным. Оп ии -а Отображает все доступные значения. -А Отображает все доступные значения в виде таблицы. -w variable=vahte Для установки неременной (variable) в значение value испиньзхется формат типа variuble=value вместе с опцией -\v. -р filename Загружает установки из указанного файла (но умолчанию /etc/ sysctl.conf). -е Hi норирует пси шестые ключевые слова, -п При печати значений запрещает печать ключевых слон.
680 tl Команды Примерь # sysctl -А abi.fakeutsname = 0 abi.trace = 0 abi.defhandler_libcso = 68157441 abi.defhandler_lcall7 = 68157441 abi.defhandler_elf = 0 abi.defhandlercoff = 117440515 dev.cdrom.check_media = 0 dev.cdrom.lock = 1 dev.cdrom.debug = 0 dev.cdrom.autoeject = 0 dev.cdrom.autoclose = 1 dev.cdrom.info = CD-ROM information. Id: cdrom.c 3.12 2000/10/18 net.unix.max_dgram_qlen = 10 net.token-ring.rif_timeout = 60000 net.ipv4.conf.lo.arpfilter = 0 net.ipv4.conf.lo.tag = 0 net.ipv4.conf.lo.log_martians = 0 net.ipv4.conf.lo.bootp_relay = 0 net.ipv4.tcp_retrans_collapse = 1 net.ipv4.tcp_sack = 1 net.ipv4.tcp_window_scaling = 1 net.ipv4.tcp_timestamps = 1 vm.max_map_count = 65536 vm.max-readahead = 31 vm.min-readahead = 3 vm.page-cluster = 3 vm.pagetable_cache = 25 50 vm.kswapd = 512 32 8 vm.overcommitmemory = 0 vm.bdflush = 30 500 0 0 500 3000 60 20 0 kernel.overflowgid = 65534 kernel.overflowuid = 65534 kernel.random.uuid = 07c48db8-24ff-44c9-bba4-9d0487f7c2a3 kernel.version = II Thu Mar 13 16:42:56 EST 2003 kernel.osrelease = 2.4.20-8 kernel.ostype = Linux fs.quota.syncs = 8 fs.quota.free_dquots = 0 fs.quota.allocated_dquots = 0 А так можно увеличить значение параметра: f sysctl -w net.ipv4.tcp_retries2 = 15
II. Команды 681 tac - конкатенирует и печатает файлы в обратном порядке. Синтаксис tac [option]...I file] Записывает каждый файл file на стандартный вывод: последнюю строку первой, предпоследнюю - второй и т.д. Если никакой файл не указан или вместо имени файла стоит дефис, считывает стандартный ввод. Опции -b, —before Подключает разделитель до начала поля вместо конца поля. -г, —regex Интерпретирует разделитель как регулярное выражение. -s, — separator=.sfnng Использует string в качестве разделителя вместо newline. —help Выводит список опций и завершает программу. —version Выводит информацию о версии программы и завершает ее. Пример S cat vvvl ssdd ssdd ghgh yuyu ssdd $ tac vvvl ssdd yuyu ghgh ssdd ssdd S tail - выводит конечные элементь файлов. IN. Синтаксис tail [option]...[file]... Обычно направляет на стандартный вывод последние десять строк каждого файла file. Если в командной строке указано более одного файла, каждому выводимому файлу будет предшествовать заголовок с его именем. Если не задано ни одного файла или вместо имени файла стоит дефис, считывает стандартный ввод.
682 II. Команды On ии - -retry Miioi икра i ни пы i ас i ся выполнить открытие файла, даже если попытки неуспешны. Имеет смысл только с опцией -f. -с, —bytes=n Выводит последние л байт. -f, —follow [= {name\descriptor}] Повторяет попытки прочесть данные в конце файла пате (вместо имени файла может быть указан дескриптор descriptor), добавляя считанную информацию к выходному файлу. Опция имеет смысл лишь для постоянно "растущих" файлов. -п, —lines=n Вместо десяти строк выводит последние и строк. —max-unchanged-stats=n Определяет количество последовательных итераций, для которых размер файла остается неизменным. После этого выполняется проверка, по-прежнему ли рассматриваемое имя файла соответствует своему первоначальному дескриптору. —max-consecutive-size-changes=n Определяет, соответствует ли заданный файл своему дескриптору после и последовательных изменений размера. —p\d=pid Завершает программу после завершения процесса с идентификатором pid. Используется совместно с опцией -f. -q, —quiet, —silent Никогда не выводит заголовков с именами файлов. -s, — sleep-interval=i Между итерациями переходит в состояние ожидания на s секунд. -v, —verbose Всегда выводит заголовки с именами файлов. —help Выводит список опций программы и завершает ее. —version Выводит информацию о версии программы и завершает ее. Если первый символ параметра л является знаком плюс, осуществляется вывод с л-ого байта или строки (см. опции -с и -п) от начала каждого файла. Параметр п может также содержать один из суффиксов: b для блоков размером в 512 байт к для блоков размером в 1024 байт m для блоков размером в 1048576 байт Пример $ tail -f vvv5 One Two Three Four Ctrl+C $
II. Команды 683 При первом чтении файла vvvS команда tail распечатала строку One, прочие строки отображались постепенно по мере их добавления совсем другой программой в файл vvv5. Процесс отслеживания "роста" файла vvv5 был прерван с помощью Ctrl+C. Idllv позволяет вести переговоры с другим К. пользователем. Синтаксис talk person [ttyname] Это инструментальное средство двухстороннего обмена существует в Unix вот уже третье десятилетие. Команда talk разделяет экран пользовательского терминала на две части, выводя в символьном режиме сообщения пользователя данного терминала в верхней части экрана, а сообщения другого пользователя - в нижней. Команда talk копирует строки с вашего терминала на терминал другого пользователя. Если вы желаете вести переговоры с пользователем вашей машины, то в качестве аргумента person задается регистрационное имя другого пользователя. Команда talk является единственным стандартным инструментальным средством обмена сообщениями в Unix, предназначенным для связи с пользователями других систем. Если вы желаете поболтать с пользователем другого хоста, тогда аргумент person указывается в форме пользоеатель@гшя_хоста. Если вы желаете поговорить с пользователем, зарегистрированным более чем на одном терминале, то следует использовать аргумент ttyname в форме WyXX or pts/X Для связи с другим пользователем ему фактически выдается запрос, который отображается на экране терминала того пользователя. Когда же пользователь отвечает соответствующей командой talk, последняя разделяет экран терминала на две части, после чего можно приступать к вводу сообщений, предназначенных другому пользователю. Системные администраторы редко пользуются командой talk для непосредственной связи с пользователями, поскольку она реализует метод двухсторонней связи, непригодный для объявлений или предупреждений. Тем не менее, некоторые администраторы считают talk очень полезной для связи с теми пользователями, которых они знают персонально или по предыдущим сеансам связи, особенно в корпоративной среде, где администраторам известно большинство пользователей. В частности, они могут воспользоваться командой talk при оказании пользователю помощи в диагностике неисправности в реальном масштабе времени, не прибегая к обычным средствам технической поддержки, ибо в противном случае для выявления неисправности потребовались бы многие часы или даже дни. Но системный администратор не должен увлекаться командой talk для связи с пользователями. В противном случае пользователи сами начнут дискуссии с ним при возникновении у них каких-либо проблем, вместо того чтобы обращаться к более подходящим средствам технической поддержки, в частности, к справочной службе.
684 Команды Пример Суперпользователь начал диалог с пользователем misha: t talk misha v rootjPlocalhost:^ _ _ _ E'e Edit View Ierminal £o Help [Checking for invitation on caller's machine] Так выглядит исходный экран, нижняя часть которого просто обрезана. tar утилита а»хива ии. К Синтаксис tar [-] А —catenate —concatenate|с —create|d —diff —compare|r —append|t —list|u —update|x —extract —get [—atime-preserve] _bf —block-size n][-B, —read-full-blocks][-C, —directory dirj —checkpoint][-f, —file {hostname:]/][—force-local][—delete] -Fr —info-script /, —new-volume-script f][-G, —incremental] -gr —listed-incremental f][-h, —dereference][-if —ignore-zeros] -Ir —bzip][—ignore-failed-read][-kf —keep-old-files] -K, —starting-file jf][-l, —one-file-system][-L, —tape-length n] -m, —modification-time][-H, —multi-volume] -N, —after-date date, —newer date] -o, —old-archiver —portability][-0, —to-stdout] -p, —same-permissions, —preserve-permissions][-P, —absolute-paths] —preserve]£-R, —record-number][—remove-files] -s, —same-order, —preserve-order][—same-owner][-S, —sparse] -T, —files-from f][—null][—totals][-v, —verbose] -V, —label паше][—version][-w, —interactive, —confirmation] -w, —verify]!—exclude file][-xr —exclude-from file} -Z, —compress, —uncompress][-z, —gzip, —ungzip] —use-compress-program prog\ filel [file! — fiJeN] dirl [dir2 — dirN] Программа tar предназначена для хранения и извлечения файлов из архивного файла, известного как tarfile. Здесь описана GNU-версия программы. Файл tarfile может быть также создан на ленточном накопителе. Первой в командной строке программы tar должна быть одна из следующих опций: Acdrtux, за которой следуют необязательные опции. Последние аргументы tar имена архивируемых файлов (/i/el...) или каталогов {dir\...). При исполь ювании имени каталога всегда предполагается, что его подкаталоги будут включены п архив. Основные опции
II. Команды 685 -A, —catenate, —concatenate Добавляет файлы в архив, -с, --create Создает новый архив, -d, —diff, —compare Обнаруживает различия между членами архива и их "исходниками" в файловой системе. —delete Удаляет файлы из архива. Эта опция не используется для архивов на МЛ. -г, —append Добавляет файлы в конец архива. -t, —list Выводит содержание архива. -u, —update Только добавляет файлы, ранее не включаемые в архив. -х, —extract, —get Извлекает файлы из архива. Другие опции —atime-preserve He меняет время доступа скопированных файлов, -b, —block-size n Устанавливает размер блока в пх512 байт. По умолчанию и =20. -В, —real-full-blocks Считывает фактические блоки; используется для чтения в конвейерах 4.2BSD. -С, —directory dir Меняет каталог на указанный, —checkpoint Печатает имена каталогов при чтении архива. -f, —file [hostname:]/ Использует архивный файл или устройство/(даже и на другом узле hostname). По умолчанию - /dev/rmtO. —force-local Предполагает, что архивный файл находится в локальной системе, даже если за опцией -f имеется двоеточие. -F, —info-script / —new-volume-script / Запускает сценарий/в конце каждой МЛ; предполагается опция -М. -G, —incremental Поддерживает старый GNU-формат инкрементного резервирования. -g, — listed-incremental / Поддерживает новый GNU-формат инкрементного резервирования, создавая, отображая или извлекая из архива/ -h, —dereference Не дублирует сами символические ссылки; лишь дублирует файлы, на которые они указывают. -i, —ignore-zeros Игнорирует в архиве блоки пулей. -I, —bzip Фильтрует архив с помощью bzip2.
050 II Команды —ignore- failed-read Игнорирует нечитаемые файлы, т.е. не завершается с кодом, отличным отО. -k, — keep-old-files Удерживает существующие файлы, не перекрывает их при извлечении членов архива. -К, —starting-file / Начинает обработку архива с файла/ -1, —one-file-system При создании архива остается в локальной файловой системе -L, —tape-length n Меняет магнитные леиты после записи каждых л х 1024 байт. -m, —modification-time При извлечении членов архива игнорирует их время модификации. -М, --multi-volume Работает с многотомным архивом. -N, —after-date date, —newer date Только хранит более новые файлы относительно даты date. -о, --old-archive, —portability Записывает архив в формате V7 вместо ANSI-формата. -О, --to-stdout Направляет извлеченные из архива файлы на стандартный вывод. -р, —same-permissions, —preserve-permissions Извлекает защищенную информацию. -Р, —absolute-paths Не отбрасывает начальный слэш из имен файлов. --preserve Соответствует одновременному заданию опций -р и -s. -R, —record-number С каждым сообщением отображает номер записи архивной информации. --remove-files Удаляет оригинальные файлы после добавления их в архив. -s, —same-order, —preserve-order Сортирует список имен файлов, извлекаемых из архива. —same-owner При извлечении файлов из архива сохраняет поле владельца файла. -S, —sparse Оптимально поддерживает "разбросанные файлы". -Т, -files-from / Для извлечения и создания получает имена из файла/ -null Считывает оканчивающиеся нулем имена файлов; запрещает опцию -С. —totals Печатает общее число байт, записанное с помощью опции —create. -v, —verbose Предоставляет список обрабатываемых файлов. -V, --label name Создает архив на томе с меткой пате. --version Сообщает о версии tar.
II. Команды -w, —interactive, —confirmation Запрашивает подтверждение для каждого действия. -W, —verify Пытается проверять архив после записи в него, —exclude file Исключает из обработки файл/г/е. -X, — exclude-from file Исключает из обработки файлы, перечисленные в файле file. -Z, —compress, --uncompress Фильтрует архив с помощью compress, -z, —gzip, —ungzip Фильтрует архив с помощью gzip. —use-compress-program prog Фильтрует архив с помощью программы file, которая должна принимать опцию -d. tcpdump - анализирует сетевой трафик. С нт кси tcpdump [-anpqtx][-i interface] [-S snaplen][-v file][expression] Утилита tcpdump - это перехватчик сетевых пакетов, распечатывающий заголовки пакетов сетевого интерфейса, совпавшие с заданным выражением expression, или фильтром. После выяснения факта наличия некоторой проблемы в сети, возможно, потребуется посмотреть прохождение по ней конкретного трафика, чтобы выяснить суть проблемы и ее причины. Это - так называемый sniffing (пассивное прослушивание сети), а наиболее распространенным инструментальным средством такого анализа служит tcpdump. Эта утилита прослушивает сетевой интерфейс и выводит трафик, указываемый в командной строке с помощью специальных фильтров expression. Далее представлены наиболее используемые фильтры: host hostname имя хоста или его IP-адрес port number номер порта tcp TCP (Transmission Control Protocol - протокол управления передачей) udp UDP (User Datagram Protocol - протокол передачи пользовательских дейтаграмм) ICMP ICMP (Internet Control Message Protocol - протокол управляющих сообщений Internet) (команда ping) sre применить следующий фильтр к исходному адресу dst применить следующий фильтр к целевому адресу Б о ые опции -i interface Определяв 1 имя анализируемого сетевого интерфейса, если вы желаете ограничиться единственным интерфейсом.
II Команды -w file Записывает информацию о пакетах в указанный файл для последующего анализа. -s snaplen "Отлавливает" из каждого пакета указанного число байтов вместо принятых по умолчанию 68. -а Пытается конвертировать сетевые и широковещательные адреса в имена. -п Не выполняет разрешения IP-адресов в имена хостов. -р Не переходит в так называемый режим "promiscuous" (разнородный, или смешанный). -q Распечатывает минимальную информацию о пакете, что обычно практикуется в том случае, если требуется лишь бросить "беглый взгляд" на происходящее в сети. -t He проставляет временные метки в строках вывода. -х Распечатывает каждый пакет (за исключением его заголовка канального уровня) в шестнадцатеричном формате. Однако используйте эту команду с осторожностью, так как она - анализатор пакетов, который может просмотреть любые незашифрованные данные, проходящие через вашу сеть, что серьезно нарушает секретность, tcpdump устанавливает интерфейс в так называемый режим "promiscuous" и распечатывает любой трафик, который видит на интерфейсе после применения заданного пользовательского фильтра, tcpdump может найти источник разнородных пакетов или накопить статистику, если ваша сеть переполняется. Но этот режим замедляет работу сетевого интерфейса машины. При ер В примере показано, как можно ограничить вывод трафиком, следующим к и от хоста my.exam.com через порт 22 (SSH): # tcpdump host my.exam.com and port 22 Kernel filter, protocol ALL, datagram packet socket tcpdump: listening on all devices 11:23:03.343382 ethOmy.exam.com.ssh>192.168.0.8.3662: P 412693775:412693883(108) ack 2432160235 win 5840 (DF) [tos 0x10] 11:23:03.363366 eth0>my.exam.com.ssh>192.168.0.8.3662: P 108:264(156) ack 1 win 5840 (DF) (tos 0x10] Вы можете использовать выражения and и or, чтобы комбинировать фильтры. IGG - одновременно копирует стандартный ввод на 1\ стандартный вывод и еще в некоторые файлы. С с tee [option]... [file] — Полезна, когда вы хотите не только переслать данные по конвейеру, но и сохранить их копии в файле file. Если указанный файл не существует, создает его. Fcjiii файл \тке имеется, перекрывает его, если только не используется опция -а.
II. Команды Опции -a, —append Дибавляс1 сындаршыи ввод к содержимому указанных файлов, ио не перекрывает их. -i, --ignore-interrupts Игнорирует сигналы прерывания. интерфейс пользователя к протоколу TELNET. telnet Синтаксис telnet [-8]l-E]|-FJl-K]l-L](-s tos][-X authtype){-a][-с][-d] [-e escapechar][-k realm] -1 user][-n tracefile]l-rJ[-x]{host [port]] Команда telnet применяется для подключения к другому сетевому узлу на протоколе TELNET (см. приложение VI). Вызванная без аргумента host, указывающего официальное имя, псевдоним или Internet-адрес дистанционного узла, переходит в командный режим, выводя приглашение. Вызванная с аргументом host, открывает подключение с учетом опций командной строки. Аргументрогг определяет номер порта, используемого для подключения к дистанционной системе; в случае отсутствия этого аргумента применяется принятый по умолчанию порт TELNET. Основные опции -8 Указывает 8-битный режим для входных и выходных данных. -Е Не распознает управляющие символы. -F Передает локальные полномочия на дистанционную систему. Применяется в случае аутентификации по Kerberos. -К. Запрещает автоматическую регистрацию в дистанционной системе. -L Указывает 8-битный вывод данных. -S tos Устанавливает тип IP-сервиса, используемого для подключения TELNET, в значение tos. Это может быть числовое значение или в системах, где это поддерживается, символическое имя, определенное в файле /etc/iptos. -X authtype Отключает тип аутентификации, заданный параметром authtype. -а Пытается выполнить автоматическую регистрацию, посылая имя пользователя. -с Запрещает чтение пользовательского файла .telnetrc. -d Устанавливает режим отладки. -е escapechar Устанавливает символ ESC - начало управляющей последовательности - для команды telnet. -k realm В случае аутенгификацин по Kerberos передает для дистанционного узла билеты в виде параметра realm. -I user Передает параметр user на дистанционную систему п качестве значения для переменной USFR. подр.нумсв.ютопцшо-а.
690 -n tracefile -r Команды close logout display mode If Команды Открывает файл tracefile и записывает в него результат трассировки Указывает пользовательский интерфейс, подобный создаваемому командой riogin. В этом режиме в качестве символа начала управляющей последовательности принимается тильда ~, если только иное не задано опцией -е. Включает, если это возможно, режим шифрования данных. Закрывает сеанс TELNET и возвращается в режим командной строки. Завершает работу пользователя и закрывает подключение Выводит вспомогательную информацию. Вводит режим командной строки или непосредственного ввода симво- ореп quit send set unset status toggle sic Выполняет подключение к указанной системе. Завершает работу программы telnet. Посылает на дистанционную систему специальные символы. Ниже приводятся некоторые из них: ао прерывание вывода brk сигнал прерывания ее удаление предыдущего символа el удаление строки escape текущий управляющий символ (ESQ ip прерывание процесса еог конец записи abort аварийное завершение процесса susp приостановка процесса eof конец файла synch выполнение синхронной операции getstatus запрос состояния Устанавливает значение параметров операций. Отменяет установленные значения параметров операций. Информирует о состоянии соединения. Меняет значения параметров. Меняет статус специальных символов. Приняты следуюшие значения: export использует локальные определения специальных символов import использует определения специальных символов дистанционного узла check проверяет определения дистанционных специальных символов Приостанавливает telnet.
II. Команды 691 environ 9 Вызывает подоболочку. Меняет переменные окружения. Печатает вспомогательную информацию. telnetd программа-сервер, поддерживающая интерактивный протокол комм никаций DARPA TELNET. Синтаксис in.telnetd [-hn][-a authmode] [ -D debugmode] [-L loginprg][-s tos] [-X authtype\[-debug port] Программа telnetd обычно вызывается inetd для реализации подключения к telnet-порту, указанному в файле /etc/services. Опция -debug позволяет запустить telnetd вручную. Основные опции -a authmode Указывает используемый для аутентификации режим. Ниже приведены значения параметра authmode: debug включает режим отладки аутентификации user разрешает подключение при корректном вводе аутентифици- рующей информации; разрешает доступ к указанному счету без ввода пароля разрешает подключение при корректном вводе аутентифици- рующей информации; команда login осуществляет дополнительную проверку пользователя на предмет разрешения автоматического доступа к указанному счету в настоящее время является синонимом valid не выполняет аутентификацию; режим, принятый по умолчанию отключает аутентификацию; все проверки личности входящего пользователя проходят через login -D debugmode Печатает отладочную информацию, чтобы пользователь видел, что выполняет telnetd. Ниже приведены допустимые значения параметра debugmode: options информирует об опциях telnet report печатает информацию об опциях и некоторую дополнительную информацию о происходящем netdata выводит поток данных, полученных telnetd pty data отображает информацию, записанную на терминал -h Запрещает распечатывать информацию об узле, пока не будет выполнена регистрация. -L loginprg Указывает программу регистрации; по умолчанию используется valid other none off
692 II Команды /bin/login. ■ч Отменяет проверку подключения машии, длительное врем* находящихся в аварийном или недосягаемом состоянии. Обычно проводит такую проверку, отключая машины, долгое время "не подающие признаков жизни". -S tos Устанавливает тип IP-сервиса для подключения TELNET в значение tos. -X authlype Запрещает использовать указанный тип аутентификации. -debug port При запуске в ручном режиме указывает альтернативный номер порта. Если имеется файл /etc/issue.net, программа-сервер telnetd отображает его содержание перед регистрацией в сеансе TELNET. time подсчитывает использование системных ресурсов заданной командой. Синтаксис time [option ] command [ARG] Команда time запускает программу command с аргументами ARG, подсчитывая используемые программой системные ресурсы. Команда time готовить отчет по следующим используемым ресурсам: время, память, ввод/вывод, вызовы IPC. Опции -f, —foTmst=format Применяет format в качестве строки формата. Далее приведены наиболее используемые форматы времени: Е реальное время, затраченное на процесс, в [час:]мин:сек е реальное время, затраченное на процесс, в секундах S общее число секунд ЦП. используемое системой на процесс (в режиме ядра) U общее число секунд ЦП, используемое непосредственно процессом (в режиме пользователя) р процент времени ЦП, получаемого конкретным заданием, пользовательское + системное время, деленное на общее время выполнения -о, — outpuH/i/e Записывает статистику по использованию ресурсов в указанный файл, по умолчанию перекрывая прежнее содержимое файла. -a, —append Добавляет статистику к содержимому указанного файла. -v, —verbose Использует встроенный подробный формат. -V, --version Выводит информацию о версии программы и завершает ее выполнение.
II. команды 693 Пр .ер. $ time md5sum Bcr.giff real 0m0.277s user 0m0.140s sys 0m0.040s Большая часть времени команды mdSsum затрачена в пользовательском режиме на выполнение вычислений. А вот 0.04 секунды в системном режиме ушло на открытие, закрытие и чтение файла с диска. Не забывайте заключать в кавычки строки формата типа такой: -f "\t%E real,\t%U user,\t*S sys" Т1П - п§ограмма чтения новостей Usenet. Синтаксис tin [[-h|-H|-Vl|[[[-a][-dlnq|-Q](-ArzX]][[-R|-S]-s i/ews-dir][-cuvVZ] [-N|-M address] [-oI-«]][-D debug-level] [-G article-limit] [-f newsrc-file] ]-g server] [-m Mail-dir]]-^ port] I -I index-dir] [ newsgroup], ]]] rtin [[-b|-H|-V]|[[[-a][-dlnq|-Q][-AzX]][-cvZ]n-Sl-s Kews-dir] t-H|-M adress](-o|-w]][-D debug-level] [-G article-limit] ]-f newsrc-file][-q server ][ -m Mail-dir][-p port][newsgroup\, ]]] tind H-h|-H|-V]|[-d|-p|-v)[-D debug-level] [-G article-limit] \-t nevsrc-file]]-l index-dir]] tin - полноэкранная, легкая в использовании программа чтения новостей Usenet, которая может считывать новости локально (/var/spool/news) или дистанционно (rtin или tin с опцией -г) через сервер NNTP. Она автоматически использует индексные файлы в стиле NOV (News Overview), если они доступны локально или через команду NNTP под названием XOVER. Программа tin может работать на четырех отдельных уровнях: уровень выбора группы, конкретной группы, "цепочечный", или обработки ветвей (см. trn), а также уровень статьи. На старте tin отображает список групп новостей, найденных в файле SHOME/.newsrc. Стрелка О или подсветка указывает иа первую группу новостей. Для перемещения между группами применяются клавиши j и к. Чтобы перемещаться между страницами используются PgUp/PgDn или Ctrl+U/Ctrl+D. Для ввода группы новостей следует нажать Return. Клавиша Tab вводит следующую группу новостей с непрочитанными статьями. Опции -а Включает ANSI-цвет (по умолчанию отключен). -А Выполняет аутентификацию при начальном подключении. -с Создает/обновляет индексные файлы для каждой группы из SHOME/.ncwsrc или файла, задаваемого с помощью опции -f, а также помечает вес статьи как прочи ганиые.
694 II. Команды -d He загружает описания групп новостей в интерактивном режиме. Удаляет индексные файлы для каждой группы перед индексированием статьи (только демои tind). -D debug-level Вводит уровень отладки: 1 - для NNTP, 2 - для всех остальных. -f newsrc-file Использует указанный файл описаний групп новостей вместо SHOME/.newsrc. -g server Применяет заданный сервер server и newsrc, указанный в $HOME/.tin/newsrctable. -G article-limit Устанавливает предел на количество статей/групп, взятых с сервера. -h Печатает список всех опций команды. -Н Предлагает текстовое введение в программу tin ( также распечатывается при первоначальном старте). -I index-dir Определяет каталог для хранения индексных файлов группы новостей. По умолчанию таковым является $HOME/.tin/.news. Эта опция недоступна, если tin компилировалась для чтения новостей только через NNTP. -1 Из файла active получает количество статей в группе. -m Mail-dir Задает каталог для нахождения почтового ящика. По умолчанию используется $HOME/Mail. -М address Посылает непрочитанные статьи по указанному адресу для более позднего прочтения пользователем. -п Загружает только те группы из файла active, которые описаны в пользовательском файле SHOME/.newsrc. N Пользователь сам себе пересылает непрочитанные статьи для более позднего прочтения. -о Быстро публикует все отсроченные статьи и завершает работу. -р port Задает используемый порт при чтении через NNTP (по умолчанию - 119). Эта опция перекрывает установленную переменную окружения SNNTPPORT. -Р Очищает индексные файлы группы новостей от уже не существующих статей, -q He проверяет появления новых групп новостей. -Q Выполняет быстрый старт программы tin, что эквивалентно набору опций -nqd. -г Считывает новости дистанционно с указанного по умолчанию NNTP- сервера, задаваемого переменной окружения SNNTPSERVER или содержащегося в файле /etc/nntpserver. -R Считывает новости, сохраненные с помощью опции -S. -s News-dir Сохраняет или считывает статьи в каталоге News-dir. По умолчанию применяется каталог $HOME/News.
II. Команды 695 -S Сохраняет непрочитанные статьи для более позднего нроч1ения с помощью опции -R. -и Создает/обновляет индексные файлы для каждой группы, заданной в файле SHOME/.newsrc, или в файле, указанном с помощью опции -f. -U Стартует tin в фоновом режиме, чтобы обновить индексные файлы, когда чтение новостей происходит в режиме переднего плана. -v Выдает подробные сообщения для опций -с, -М, -S, -u, -Z. -V Сообщает номер версии программы. -w Переходит в быстрый режим публикации статьи и завершает работу. -X Запрещает осуществлять перезапись файла SHOME/.newsrc и файлов из SHOME/.tin, но не препятствует их созданию, если они не существуют. -z Осуществляет старт программы tin лишь в случае, когда имеются новые или непрочитанные новости. -Z Проверяет наличие новых/непрочитанных новостей и завершается с соответствующим кодом: 0 - свидетельствует о том, что таких новостей не имеется, 1-0 возникновении ошибки, 2 — о существовании новых или непрочитанных новостей. Демон индексов, tind, поддерживает опции -d, -f,-h,-I и -v. На уровне выбора групп отображается заголовок, содержащий число описанных групп вместе с новыми непрочитанными статьями. В строках описаний групп могут содержаться следующие префиксы: и группа не описана М это так называемая moderated (регулируемая администратором) группа N новая группа новостей, созданная после последнего использования tin D группа больше не существует X для этой группы можно не осуществлять публикации = группа была переименована, и вы можете не осуществлять для нее публикации На уровне группы заголовок содержит имя группы, число преобразованных ветвей, метод образования ветвей (цепочек), общее число статей, количество "убитых" и "горячих" статей т.д. Ниже показаны общие клавиши, используемые для перемещения по всем уровням tin на ANSI-терминалах (VT100): Ноте переход к началу списка/статьи End переход к концу списка/статьи PgUp вверх по странице PgDn вниз по странице ф построчно вверх Ф построчно вниз g или G вызов в статье меню помощи и конфигурирования. Ниже приведены общие команды редактирования входных строк: ЛА, ЛЕ перемещение соответственно к началу или концу с грокн
696 II Команды AF, ЛВ неразрушающее перемещение соответственно в прямом или обратном направлении (в одном расположении) А D уничтожение текущего символа под курсором или посылка сигнала EOF (конец файла), если в буфере отсутствуют символы ЛН, <DEL> удаление символа слева от курсора А К удаление символов от курсора и до конца строки АР, AN перемещение по списку history соответственно к предшествующей нли последующей строке AL, AR повторное изображение текущей строки <CR> включение непустой строки в список history, добавление символа newlinc (новой строки), а затем возврат к месту вызова <ESC> прерывание операции редактирования Следующие команды доступны в каждом из четырех уровней: \<command> сама по себе команда ! вызывает оболочку или ее команду command, если включен этот параметр; эта возможность может быть запрещена системным администратором А L перерисовывает текущий экран аО перезагружает отсроченную статью; в меню postpone-menu можно выполнять следующие действия: у перезагружать и вызывать редактор Y публиковать статью без вызова редактора . А публиковать все отсроченные статьи без вызова редактора п пропускать эту статью q покидать меню О перезагружает отсроченную статью (см. переключатель командной строки -о) W печатает список статей, публикуемых пользователем, при этом выводится следующее: дата публикации, группа новостей и тема v печатает информацию о версии программы На каждом из четырех уровней существуют также свои собственные команды (см. страницы руководства). IU|J - выполняет монито инг и правление процессами. Синтаксис top [-][d deJayJlP pid][q][с][С][Н][S][в][i][n iter][b] Команда top осуществляет наблюдение за активностью процессора в реальном масштабе времени и отображает список заданий, наиболее интенсипно использующих процессор. Она может сортировать процессы по их P1D, "возрасту", использованию
II. Команды 697 ЦП или памяти, а также по времени выполнения. Команда top также предоставляет интерактивный интерфейс для манипулирования процессами. Применение команды ps для выявления процессов, интенсивно использующих ЦП, может оказаться непростой задачей, когда в системе выполняются сотни процессов. В подобных случаях имеет смысл поручить подобную задачу команде top. Команда top представляет собой приложение независимого производителя, обычно не связанное с конкретной операционной системой (хотя оно и входит в состав некоторых разновидностей Linux). По умолчанию команда top отображает 15 процессов, больше всего использующих ЦП в течение 5-секундных интервалов, по истечении каждого из которых полученный результат обновляется. Опции d delay Указывает задержку между обновлениями экрана. Задержку также можно поменять с помощью интерактивной команды s. р pid Выполняет мониторинг процессов только с указанными PID. Этот флаг может быть задан до двадцати раз. Эта опция недоступна в интерактивном режиме и не может быть включена в файл конфигурации. q Обновляет экран без какой-либо задержки. Если запустивший программу top имеет привилегии суперпользователя, top выполняется с максимально возможным приоритетом. S Указывает совокупный режим, при котором по каждому процессу отображается использованное им и "умершим" дочерним процессом время ЦП. s Запускает top в безопасном режиме, защищая ее от потенциальной опасности интерактивных команд. i Игнорирует любые бездействующие или зомби-процессы. С Отображает общее состояние процессоров вместо индивидуальных процессоров, что имеет смысл лишь на SMP-системе. с Отображает всю командную строку вместо только имени команды. Н Показывает все потоки. n iter Задает число итераций. Обновляет дисплей указанное число раз. b Переходит в пакетный режим, что полезно при передаче вывода от команды top другой программе или в файл. В этом режиме не воспринимает также ввод с командной строки. Выполняет заданное опцией п число итераций или пока не будет снят командой kill Команда top также распознает интерактивные команды (однокпавншные). Команды пробел Немедленно обновляет экран. AL Очищает и перерисовывает экран. п, ? Выдает экранную справку по команде top.
698 II Команды к "Убивает" процесс. Вы будете приглашены ввести РЮ задания и сигнал, который будет ему послан. В обычных случаях посылает сигнал 15. 1 Игнорирует любые бездействующие или зомби-процессы. п, # Меняет число процессов, попадающих в вывод команды. Вы будете приглашены задать число процессов. q Завершает работу top. г Перепланирует процесс. Вы будете приглашены для ввода РШ задания и значения nice. Ввод положительного числа означает потерю приоритета. S Указывает совокупный режим, при котором по каждому процессу отображается использованное им и "умершим" дочерним процессом время ЦП. s Меняет задержку между обновлениями экрана. Вы будете приглашены ввести время в секундах. Ноль означает отсутствие задержки. По умолчанию — 5 секунд. f, F Добавляет и удаляет поля из отчета команды. о, О Меняет в отчете порядок выводимых полей. 1 Заставляет отображать среднюю нагрузку и время безотказной работы. m Сообщает информацию о памяти. t Сообщает информацию о процессах и ЦП. с Отображает имя команды или полностью командную строку. N Сортирует задания по PID. А Сортирует задания по "возрасту" (сначала самые новые). Р Сортирует задания по использованию ЦП. М Сортирует задания по использованию резидентной памяти. Т Сортирует задания по времени/накопившемуся времени. W Записывает файл конфигурации в -/.toprc. Примеры Здесь представлен фрагмент вывода команды top. f top 03:07:37 up 21 Bin, 4 users, load average: 0,76, 0,54, 0,45 67 processes: 58 sleeping, 3 running, 0 zombie, 6 stopped CPU states: 27,9% user 8,2% system 0,0% nice 0,0% iowait 63,8% idle Hem: 126392k av, 124040k used, 2352k free, 0k shrd, 7668k buff 93356k actv, 240k in_d, 1704k in_c Swap: 409648k av, 3504k used, 406144k free 53216k cached
П. Команды 699 PID USER 2697 root 2472 root 2698 root 2695 misha 4 root 1 root FRI 23 15 20 21 15 15 N1 0 0 0 0 0 0 SIZE 556 21180 1048 666 0 108 RSS 556 8812 1048 668 0 84 SHARE STAT 468 R 984 S 844 R 560 R 0 SH 56 S %CFU 57,5 18,6 11,0 3,3 2,5 0,0 %HEH 0,4 6,9 0,8 0,5 0,0 0,0 TIME 0:02 3:19 0:00 0:02 0:00 0:04 CPU 0 0 0 0 0 0 COHHAND find XSK top findl kswapd init 2 root 15 0 SH 0,0 0,0 0:00 0 keventd Начнем рассмотрение этого вывода со столбца STAT (состояние), перечислив обычные состояния процессов: R В настоящий момент процесс выполняется на ЦП S Процесс блокирован в ожидании ввода/вывода Т Выполнение процесса остановлено Z Процесс-зомби не действует и ожидает уничтожения Эти состояния дополняются следующими трейлерами: < для процесса с отрицательным значением nice N для процесса с положительным значением nice W для выгруженного (с памяти на диск) процесса В столбцах SIZE (размер) и RSS (размер резидентной области памяти) сообщается об использовании памяти каждым процессом. Так, в столбце SIZE указывается общий размер процесса, включая текстовый сегмент (код), информационный сегмент (статически распределенные данные) и стек. А в столбце RSS указывается размер резидентной области памяти, занимаемой процессом, или объем физической памяти, используемой процессом. В столбце РШ приводится идентификатор процесса каждой задачи, а в столбце USER - имя пользователя. В столбце PRI указывается приоритет задачи, а в столбце N1 - значение nice для этой задачи. В столбце TIME показано общее время ЦП, использованное задачей с момента старта, а в столбце %CPU - доля времени ЦП (в процентах), используемая задачей с момента последнего обновления экрана. В столбце SHARE приводится общее количество разделяемой памяти, используемое задачей. tOUCn меняет время доступа и/или модификации К. указанных файлов. ис touch {option]...file Если ни с одной из этих опций - -d, -r, -t - не указана ни одна временна' я метка, отсутствует аргумент — (конец опций) и задана опция -t, то первый аргумент/i/e (вместо имени файла) трактуется как время для других файлов. Любой несуществующий файл вновь будет создан. Команда touch может менять временные метки, или метки времени, для файлов, запущенных пользователем, даже в том случае, если он не является владельцем, но
700 II. Команды имеет полномочия на запись. В противном случае пользователь должен быть собственником файлов. Опции -а, — time=atime, —time=access, —time=use Меняет только время доступа, -с, —no-create He создает ранее несуществующих файлов. -d, — date=fime Использует указанное время вместо текущего. Спецификация времени может содержать название месяца, часовой пояс, выражения типа am (до полудня) и рш (после полудня). -m, — time=mtime, — time=modify Меняет только время модификации. -г file, — reference=/i/e Использует временные метки файла file вместо текущего времени. -t [[CC]YY]MMDDhhmm[.ss] Использует указанное время вместо текущего, где: СС необязательный век YY год ММ месяц DD день hh час mm минуты js необязательные секунды Если год указывается только двумя цифрами, тогда СС принимается равным 20 для годов в диапазоне 0-68 или 19 - для годов в диапазоне 69-99. Если ни одна цифра года не задана, аргумент интерпретируется как дата текущего года. Пример Проще всего создать пустой файл с помощью команды touch: $ touch тптптп $ Можно создавать файлы с давно прошедшей (или с будущей) датой. ХГ - лняет преобразование текстового файла. К. нтаксис tr [option]... setl [set2] Если заданы оба набора символов и не указана опция -d, команда tr транслир\ет каждый символ sell в соответствующий симпол set2. Символы, отсутствующие в sell. остаются неизменными. Если какой-либо симпол появляется в sell несколько раз, а соответствующие символы в set! разные, берется последний вариант.
II. Команды 701 Опции -с, —complement Замещает набор setl его дополнением (всеми символами, отсутствующими в setl). -d, —delete Удаляет все символы, перечисленные в setl. -s, —squeeze-repeats Заменяет последовательность повторяющихся символов в setl на один такой символ. -t, —truncate-setl Обрезает setl, если этот набор символов длиннее set2. В командных строках tr встречаются следующие наименования классов: alnum буквы н цифры alpha буквы blank горизонтальные пробелы cntrl управляющие символы digit цифры graph распечатываемые символы без включения пробелов lower строчные буквы print распечатываемые символы, включая пробелы punct знаки пунктуации space горизонтальные или вертикальные пробелы upper прописные буквы xdigit шестнадцатеричные цифры Примеры Команда tr часто используется для конвертирования строчных символов в прописные, что можно проделать разными способами: tr abcdefghijklmnopqrstuwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ tr a-z A-Z tr *[:lower:]' '|:upper:]' А вот пример создания конкорданса - словоуказателя, связывающего каждое употребление слова со своим контекстом. Распечатаем файл rab, конкорданс содержимого которого мы затем создадим. $ cat rab Ну name is Sofia. I am a programmer. I prefer Red Bat Linux. $ Создавая указатель слов, мы преобразуем все пробелы в символы новой строки (\п). Отсортируем конкорданс по алфавиту и укажем в начале строки частоту появления каждого слова. $ tr • ' '\n' <rab | sort| uniq -с 1 а 1 am
702 II. Команды 1 Bat 2 I 1 is 1 Linux. 1 My 1 паше 1 prefer 1 programmer. 1 Red 1 Sofia. $ ТГЭСбГОиТб - обнаруживает неполадк /аршрутиза ни. К. Синтаксис traceroute (-dFInrvx][-f firEt_ttl][-g gateway\[-i iface][-m max_ttl] [-p por£][-s src_addr\[~t tos][-v waittime] host [packetlen] С помощью traceroute отслеживается маршрут передачи пакета между двумя узлами сети. Поэтому единственным обязательным аргументом является имя или IP-адрес узла назначения host. Однако обнаружение неполадок маршрутизации может осложняться наличием большого числа маршрутизаторов между источником и узлом назначения. Каждая строка вывода команды traceroute соответствует одному маршрутизатору, через который проходит пакет. Продолжительность существования пакета в сети определяется содержимым поля TTL (Time To Live - время жизни), включенного в заголовок IP-пакета. При прохождении пакетом очередного маршрутизатора значение поля TTL уменьшается на единицу. И как только значение TTL достигнет нуля, пакет будет удален из сети первым обнаружившим этот факт маршрутизатором. Причем каждый маршрутизатор, уничтоживший пакет, возвращает источнику сообщение ICMP Time Exceed (об истекшем времени жизни пакета). Команда traceroute, используя описанный механизм, обычно отправляет на дистанционный узел несколько пакетов UDP, где TTL первого пакета равен единице, a TTL каждого последующего на единицу превышает TTL предшествующего пакета. Другими словами, первый пакет удаляется, достигнув первого маршрутизатора по пути следования, второй пакет, пройдя первый маршрутизатор, прекращает свое существование, добравшись до второго маршрутизатора и т.д. По умолчанию размер packetlen отправляемой дейтаграммы достигает 40 байт, может быть увеличен и всегда следует после имени источника назначения. Опции -f firstjtl Устанавливает начальное значение TTL, используемое в первом отправляемом пакете. -F Устанавливает бит, препятствующий фрагментации, -d Включает режим отладки сокета. -g gateway Указывает число исходных, не пройденных по маршруту шлюзов (максимум 8).
II. Команды 703 -i iface Указывает сетевой интерфейс для рассылки пробных пакетов. -1 Вместо дейтаграмм UDP применяет ICMP ECHO. -m maxttl Устанавливает максимальное число переходов, по умолчанию принято 30. -п Печатает адреса проходимых маршрутизаторов в числовом формате, а не в символьном. -р port Устанавливает базовый номер порта UDP, используемый при тестировании, по умолчанию - 33434. Чтобы получить ответ от узла назначения, traceroute направляет пакет UDP в порт 33434, так называемый зарезервированный недопустимый номер порта. Поэтому принимающий узел отсылает обратно не ICMP Time Exceed, а сообщение ICMP Unreachable Port (недостижимый порт). Получив такое сообщение, traceroute прекращает отправку диагностических пакетов. -г Не использует таблицы маршрутизации, считая, что узел назначения находится в непосредственно подключенной сети. Если в локальной сети узел не удалось обнаружить, возвращает сообщение об ошибке. -s srcaddr Использует указанный IP-адрес в качестве исходного адреса для отправки диагностических пакетов. -t tos При диагностике пакетов устанавливает тип сервиса в указанное значение (но умолчанию 0). Параметр tos является десятичным целым и меняется от 0 до 255. Многие сетевые службы, такие как TELNET и FTP, не позволяют вам управлять этим параметром. -v Устанавливает режим подробного вывода, информируя помимо Time Exceed и Unreachable Port и о других полученных ICMP-пакетах. Устанавливает время (в секундах) ожидания ответа; по умолчанию - 5 секунд. Включает проверку контрольных сумм, хотя traceroute обычно не делает этого. -w waittime Пример # traceroute mir.dnepr.ua traceroute to mir.dnepr.ua (147.53.29.18), 30 hops max? 40 byte packet 1 rada.dnepr.ua (153.237.53.1) 8ms 5ms 3 ms 2 arcada.dnepr.ua (196.203.27.3) 31ms 18ms 7ms 3 * » * 4 * * * 30 * * * t Команде traceroute не удалось "продвинуться" по маршруту далее второго маршрутизатора.
704 II Комаеды ТГП позволяет читать новости Usenet по цепоч е Синтаксис trn [option][newsgroups] Программа trn - это "цепочечная" или ориентированная на ветви версия гп, предназначенная заменить программу rcadnews. В термин "цепочечная" вкладывается следующий смысл: статьи внутри каждой группы новостей в соответствии со своими темами расположены как бы по цепочке. Каждая следующая статья в цепочке является ответом на предшествующую. Каждая обсуждаемая цепочка — это дерево статей, где каждая ответная (дочерняя) ветвь статей является порождением своих соответствующих оригинальных (родительских) статей. Представление каждого дерева или его порции отображается в заголовке статьи при чтении новостей, что позволяет читателю новостей представить, как эти статьи соотносятся. Программа trn имеет цепочечный селектор, позволяющий быстро просматривать список тем и выбирать наиболее интересную. Селектор сортирует статьи по разным критериям и может осуществлять переключения в разные дисплейные режимы, что позволяет отдельно отбирать темы и индивидуальные статьи. Любые выбранные темы могут быть сохранены для последующего прочтения или отмечены как прочтенные одним нажатием клавиши. Если при запуске trn в командной строке не были указаны никакие группы новостей, задаваемые аргументом newsgroups, то все группы новостей, содержащие непрочитанные новости, будут представлены читателю в том порядке, в каком они располагаются в файле .newsre. В приглашении для каждой группы пользователь может выбрать, что читать, пропускать, переносить и т.д. Если же в командной строке указан список групп новостей newsgroups, то trn стартует в режиме add (добавления), используя список как набор шаблонов для добавления новых групп новостей и отбора тех, которые следует отобразить. Программа trn работает на четырех уровнях: уровень выбора группы новостей, цепочечного селектора, чтения статей и страницы. Каждый уровень имеет свой собственный набор команд и меню help (помощи). На наиннзшем уровне чтения страницы trn действует подобно программе more. На уровне чтения статей последние представляются в порядке их ответов по цепочке, причем темы располагаются, начиная с самой старой непрочитанной статьи, хотя этот порядок легко поменять с помощью существующих команд. На уровне цепочечного селектора читатель может ознакомиться с темами и авторами, связанными с каждой цепочкой, ему предоставляется возможность выбрать желаемое для немедленного или отсроченного прочтения или любых других манипуляций. На наивысшем уровне выбора групп новостей можно выбрать след> ю- щую группу или считывать их в установленном по умолчанию порядке. На любом уровне и в любом приглашении пользователю доступна помощь путем нажатия h. На многие вопросы приходится отвечать путем нажатия пробела. Следует знать, что каждое приглашение содержит список вероятных команд, заключенных в квадратные скобки. Первая команда списка обычно будет выполни гься при нажатии клавиши пробела.
II. Команды 705 В самом начале trn выполняет ряд необходимых действий: Q Ищет пользовательский файл .ncwsrc со списком групп новостей, если файл не найден, создает его. Если упомянутый файл обнаружен, сохраняет его содержимое под именем .oldncwsrc. О Выполняет ряд необходимых проверок, предпринимая действия по исправлению некорректных ситуаций; предоставляет возможность добавить, если это необходимо, новые группы новостей в файл .newsre. О Поднимается на верхний уровень - выбор групп новостей (Newsgroup Selection level). Команды верхнего уровня + Проводит эту группу новостей через селектор. у Немедленно начинает чтение текущей группы новостей. SP Вводит группу новостей с помощью выполнения команды по умолчанию из списка, заключенного в квадратные скобки. .command Выполняет указанную команду command до отображения чего бы то ни было. Команда интерпретируется как набранная на уровне выбора статьи. = Запускает текущую группу новостей, но перед просмотром статей выводит список тем. U Проводит текущую группу новостей через приглашение Set unread (установить нечитаемой). t Переключает определенную группу новостей между режимами чтения по цепочке (по умолчанию) и без. п Переходит к следующей группе, содержащей непрочитанные новости. N Переходит к следующей группе. р Переходит к предшествующей группе, содержащей непрочитанные новости. Если таковой не имеется, остается на месте. Р Переходит к предшествующей группе новостей. Переходит к ранее просмотренной группе новостей независимо от того, предшествующая она или нет в этом списке. 1^"^ Переходит к первой группе новостей. Л Переходит к первой из групп, содержащей непрочитанные новости. $ Переходит к концу списка групп новостей. g newsgroup Переходит к указанной группе новостей. В качестве аргумента newsgroup может быть задано имя группы или даже относительный номер (нумерация начинается с нуля) группы в файле .ncwsrc (см. команду L). Если группа не описана, пользователю будет предложено ввести ее описание. /pattern Производит поиск в прямом направлении группы новостей, соответствующей шаблону pattern, при этом выполняется замещение имен файлов. Символ * может быть сопосгавлен с любой последовательностью
706 II Команды символов; список символов для сравнения заключается в прямоугольные скобки; точка может быть сопоставлена с единственным символом. В отличие от обычного замещения имен файлов подобный поиск групп новостей не привязывается к началу или концу имени, т.е. по шаблону /skat будет найдена com.skating. Символ А или $ заполняет этот пробел: по шаблону /Asea$ будет найдена группа sea н ничего более. ^pattern Действует подобно /pattern, но выполняет поиск в обратном направлении. и Снимает описание текущей группы. 1 string Выводит список неописанных групп новостей, содержащих указанную строку string. L Уведомляет о состояние файла .newsrc, выводя следующие поля: Статус Что обозначает number здесь number указывает количество непрочитанных статей в группе новостей READ в группе новостей отсутствуют непрочитанные статьи. UNSUB неописанная группа новостей BOGUS фиктивная группа новостей JUNK проигнорированные (бесполезные) строки в файле .newsrc Фиктивная группа отсутствует в списке активных групп новостей в файле active; в большинстве систем в качестве такового файла применяется /var/lib/ncws/active, если только не используется NNTP. с Отмечает все непрочитанные статьи этой группы новостей как прочитанные. о {pattern}, О {pattern} Вызывает только те группы новостей, чьи имена совпали с шаблоном pattern. Несколько шаблонов могут разделяться пробелами. Команда О подобна команде о, но вдобавок исключает пустые группы. a pattern Добавляет неописанные группы, соответствующие шаблону pattern. Если вы хотите добавить все группы новостей, наберите Y, чтобы добавить их в конец файла .newsrc. Если вы не хотите описывать все оставшиеся группы, наберите N, чтобы проигнорировать их. & Печатает текущий статус переключателей командной строки и любые ограничения, действующие в этой группе новостей. &switch {switch} Устанавливает дополнительные переключатели командной строки. && Печатает текущие макроопределения. &&keys commands Определяет дополнительный макрос. [command Передает указанную команду на выполнение в подоболочку. Единственный восклицательный знак оставляет пользователя в его собственном
II. Команды 707 каталоге новостей. Два восклицательных знака оставляют пользователя в спул-каталоге новостей, таковым обычно являсгся /usr/spool/news, если только для чтения новостей не используется NNTP v Печатает текущий номер версии. q Завершает работу программы. х Завершает работу программы, восстанавливая то состояние файла -newsrc, которое было до начала старта trn. Если не требуется выполнять такое восстановление, лучше для выхода воспользоваться командой q. АК Редактирует глобальный список команд для запоминания, которые по мнению пользователя должны быть выполнены при старте в каждой группе новостей. Этот список содержится в глобальном файле KILL, причем каждая команда располагается в отдельной строке. Большинство людей, экономящих время, предпочтут пропустить группу новостей через селектор, что достигается путем применения команды + на уровнях выбора групп новостей, статьи или страницы. Команды уровня селектора a-z, 0-9, A-Z Выбирает/отвергает указанную тему по ее номеру или букве. S Р Выполняет заданную по умолчанию команду: для большинства страниц таковой является команда >, но для последней страницы - Z. Хотя к числу популярных относятся также команды D и X. CR Начинает чтение. Если ни одна статья не выбрана, выбирается текущая тема. Z, TAB Начинает чтение. Если ни одна статья не выбрана, читает все непрочитанные статьи. Включает выбор текущей (под курсором) темы. * Подобна команде точки, но задействует все статьи с аналогичной темой (Subject). # Читает только текущую тему, игнорируя любой другой выбор, к, , Помечает текущую тему как уничтоженную. m, \ Снимает метку с текущей темы. Устанавливает диапазон, например а-k, повторяя последнее помеченное действие: выбор, отмена выбора, уничтожение или снятие метки. @ Включает выбор всех возможных вариантов. М Помечает статьи текущей темы как подлежащие возврату в группу новостей и уничтожает эту тему. Y Отзывает назад статьи, помеченные для возврата, при этом очищает н\ статус "для возврата". Е Исключает все темы, не выбранные из списка выбора. п, ] Спускается к следующей теме.
708 II Команды Р.[ < > л $ S R L U X J с А Т ЛК '.command '..command '.'..command Поднимается к предшествующей теме. Переходит к предшествующей странице. Переходит к следующей странице. Переходит к первой странице. Переходит к последней странице. Устанавливает для селектора отображаемые темы: threads цепочки subjects темы articles статьи Переключает между селектором выбора статьи и селектором тема/цепочка. Устанавливает порядок сортировки для пунктов: по дате, по теме, по автору и т.д. Набирая выбранный порядок в нижнем регистре, читатель задействует сортировку статей по умолчанию. Если были использованы символы верхнего регистра, будет выполняться обратная сортировка. Устанавливает обратный порядок для текущей сортировки. Переключает селектор между длинным, средним и коротким стилями отображения на дисплей. Чтобы установить свой "любимый" стиль в качестве стиля по умолчанию, см. опцию -х. Переключает между выбором непрочитанные/прочитанные статьи. Помечает все невыбранные статьи как статьи для чтения и начинает их чтение. Помечает невыбранные статьи на текущей странице как статьи для чтения и начинает чтение, если имеется, что читать, в противном случае переходит к следующей странице. Помечает все выбранные статьи как прочитанные. Помечает все статьи как прочитанные, не затрагивая их перекрестные дубликаты. Добавляет для этой группы команду поиска тем в список команд для запоминания (файл KILL). Добавляет для этой группы команду, ориентированную на цепочку, в список команд для запоминания. Редактирует для этой группы новостей локальный список команд для запоминания (файл KJLL). Применяет указанную команду ко всем выбранным цепочкам или к их выбранным статьям. Применяет указанную команду к текущей цепочке или ко всем выбранным статьям этой цепочки. Применяет указанную команду к невыбранным статьям текущей цепочки.
II. Команды 709 /pattern Просматривает все статьи в поисках темы, соответствующей указанному шаблону pattern, и выбирает ее. N Переходит к следующей группе новостей с непрочитанными статьями. Р Переходит к предшествующей группе новостей с непрочитанными статьями. & Отображает или устанавливает текущий статус переключателей командной строки. && Отображает или устанавливает текущие макроопределения. ! command Передает указанную команду на выполнение в подоболочку. q Покидает эту группу. ESC, + Покидает уровень селектора и переходит на уровень чтения статей. Q Завершает работу с текущей группой новостей и возвращается к приглашению выбора групп новостей. Команды уровня чтения статей n, SP Производит поиск в прямом направлении следующей непрочитанной статьи. Следует учесть, что статья будет отмечена как прочитанная при наборе n, N, AN, e, s, S, I, w или W в середине статьи. N Переходит к следующей статье. л N Находит следующую статью с той же темой в порядке поступления по дате. р Производит поиск в обратном направлении ранее непрочитанных статей. Если таковых не имеется, остается на прежнем месте. Р Переходит к предшествующей статье. - Переходит к ранее отображаемой статье. Л Р Находит предшествующую статью с той же темой в порядке поступления по дате. _N Переходит к следующей статье в порядке числовой последовательности. _р Переходит к предшествующей статье в порядке числовой последовательности. <, > Просматривает предшествующую/следующую цепочку/тему. Если никакого выбора не было сделано, все цепочки, имеющие новости, не прочитанные на момент вхождения читателя в группу новостей, рассматриваются как выбранные. [, ] Передвигается налево/направо по дереву статей. Посещения уже прочитанных статей аналогичны визитам на пустые узлы. {,} Переходит к корню/листьям дерева статей, даже если узел уже прочитан или пуст. t Отображает полное дерево статей и все связанные с ним темы. Л R Осуществляет рестарт текущей статьи.
710 V b ЛЕ q II. Команды Осуществляет рестарт текущей статьи, отображая полный заголовок Очищает экран. Осуществляет возврат на одну страницу. Выводит последнюю страницу статьи. Покидает эту группу новостей, возвращаясь к уровню выбора группы новостей. Переходит к первой непрочитанной статье. Переходит к последней статье. Переходит к статье с указанным номером number. Применяет указанную команду ко всем выбранным цепочкам или к их выбранным статьям. Применяет указанную команду ко всем невыбранным цепочкам/статьям. Применяет указанную команду к текущей цепочке или к выбранным в ней статьям. ■.-..command Применяет указанную команду ко всем невыбранным статьям текущей цепочки. j Помечает текущую статью как уже прочитанную. m Помечает текущую статью как еще непрочитанную. М Помечает текущую статью как подлежащую возврату в группу новос- $ number .command ■..command '..command Y Отзывает назад статьи, помеченные для возврата, при этом очищает их статус для "возврата". /pattern Просматривает в прямом направлении все статьи в поисках темы, содержащей указанный шаблон pattern. Ipattern!'f Просматривает в прямом направлении все статьи в поисках строки From (от кого), содержащей указанный шаблон pattern. I pattern/Wieader Просматривает в прямом направлении все статьи в поисках указанного заголовка header, содержащего заданный шаблон pattern. /pallern/b Осуществляет просмотр в прямом направлении в поисках заголовка статьи, соответствующего указанному шаблону pattern. /pattern/a Осушествляет просмотр в прямом направлении в поисках статьи, содержащей где-либо указанный шаблон pattern. /pattern/Ъ Осуществляет просмотр в прямом направлении в поисках статьи, содержащей в своем теле (но не в подписи) указанный шаблон. /pattern/B Осуществляет просмотр в прямом направлении в поисках статьи, содержащей где-либо в теле указанный шаблон pattern. /paitern/r Осуществляет просмотр по шаблону уже прочитанных статей.
II. Команды 711 lpattern/с Производит поиск с учетом регистра. Обычно символы верхнего и ни* него регистров рассматриваются как одинаковые. Ipattern/t Начинает поиск с вершины группы новостей. ^pattern Осуществляет просмотр в обратном направлении в поисках статьи, содержащей в теме указанный шаблон pattern. к Помечает как прочитанные все статьи по такой же теме, как и текущая. J Отбрасывает все статьи текущей цепочки, даже если они содержат несколько тем. А Добавляет для этой группы команду поиска тем в список команд для запоминания (файл KILL). Т Добавляет для этой группы команду, ориентированную на цепочку, в список команд для запоминания. Л К Редактирует для этой группы новостей список команд для запоминания. г Отвечает через почтовую сеть. R Отвечает, включая текущую статью в созданный файл заголовка. Л F Передает дальше (перепоручает) текущую статью. f Переходит в подчинение к вышестоящей статье, а возможно, даже к оригинальной (корневой). F Переходит в подчинение к вышестоящей статье и включает старую статью со строками, содержащими префикс > или любой другой, задаваемый в виде аргумента к переключателю -F. С Уничтожает текущую статью лишь в том случае, если пользователь, набравший команду, является администратором или суперпользователем. z Замещает текущую статью (только администратор службы новостей). Z Подобна команде z, но стартует с копией оригинальной статьи, с которой в дальнейшем работает. с Помечает все статьи этой группы как прочитанные. U Помечает некоторые или все статьи как непрочитанные. Можно выбрать текущую цепочку, подцепочку (текущую статью и ее ответы), все статьи или запустить селектор, чтобы с его помощью отобрать статьи и пометить их как непрочитанные. и Удаляет описание этой группы. s destination Сохраняет статью в файле с указанным именем. Если первый символ аргумента destination - вертикально черта, полагает, что остаток выражения является командой оболочки, через стандартный ввоч которой подается статья. В качестве оболочки обычно используется sh S destination Подобна команде s destination, но здесь используется желаемая ооо- лочка, например, csh. Выбор оболочки зависн г от значения переменной
712 И Команды окружения SHELL, а в случае ее отсутствия - от той установки, которую выполнил администратор службы новостей при инсталляции trn w destination Подобна команде s destination, но выполняет сохранение без заголовка. W destination Подобна команде S destination, но выполняет сохранение без заголовка. е dir Извлекает архив оболочки или двоичный кодированный файл (UU-ko- дирование) в указанный каталог dir. & Печатает текущий статус переключателей командной строки. &switch {switch} Устанавливает дополнительные переключатели командной строки. && Распечатывает текущие макроопределения. &&keys commands Определяет дополнительное макроопределение. './command Передает указанную команду на выполнение в подоболочку. Единственный восклицательный знак оставляет пользователя в его собственном каталоге новостей. Два восклицательных знака оставляют пользователя в спул-каталоге текущей группы новостей. + Запускает селектор в его последнем используемом режиме. _а Запускает селектор в режиме статьи. _s Запускает селектор в режиме темы. _t Запускает селектор в режиме цепочки. = Сообщает темы непрочитанных статей. # Печатает номер последней статьи. _+ Выбирает полную цепочку, связанную с текущей статьей. - Отменяет выбор цепочки, связанной с текущей статьей. Команды уровня страницы (внутри статьи) S Р Выводит следующую страницу. d Выводит еще полстраницы. С R Выводит еще строку. q Переходит к концу текущей статьи, не производя никаких пометок. j Отбрасывает текущую статью; помечает текущую статью как прочитанную и переходит к ее концу. AL Очищает экран. b Осуществляет возврат на одну страницу. ЛЕ Выводит последнюю страницу статьи. t Отображает полное дерево статей, включая связанные с ним темы, и продолжает чтение.
II. Команды g pattern Внутри текущей статьи переходит к указанному шаблону pattern С Вновь осуществляет поиск по команде g pattern. ! command Передает указанную команду на выполнение в подоболочку Примеры На уровне выбора групп новостей приглашение будет выглядеть примерно так: ======12 unread articles in talk.xml —read now? [ynq] Приглашение на уровне чтения статьи выглядит следующим образом: End of articles 237 —what next? [npq] На уровне чтения страниц можно получить такое приглашение: —HORE—(24%) С помощью команды trn -x -X можно включить самые удобные возможности. ТГОТТ - форматирует тексты для печати. К Синтаксис troff [ -abivzER) [-dcs] [-f fam] [-плит] [-olist] [-Inane] [-Hdir] [file...] GNU-версия troff является частью системы форматирования документов под названием groff. Обычно troff вызывается командой groff, использующей препроцессоры и постпроцессоры с соответствующими опциями. Основная задача troff— соответствующим образом интерпретировать команды форматирования (их насчитываются десятки), вставленные в текст. Основные опции -а Создает ASCII-последовательность для вывода. -Ь Вместе с предупреждениями и сообщениями об ошибках печатает последовательность вызовов (трассу), приведших к данной точке программы. -i После обработки всех указанных входных файлов file считывает стандартный ввод. -v Печатает номер версии программы. -Е Запрещает печатать любые сообщения об ошибках. -z Запрещает форматировать выходной файл. -dcs, -dname=s Определяет однобуквенный символ с или имя пате в качестве строки s. -ffam Применяет fam в качестве семейства шрифтов, принятого по умолчанию. -R Не загружает файл инициализации troffrc. -пиши Начинает нумеровать первую страницу с номера пит.
714 II. Команды -olisl Печатает только страницы из указанного списка, представляющего из себя разделенный запятыми перечень диапазонов страниц. Допустимы следующие значения: « печатает я-ую страницу т-п печатает страницы с m-ой по п-ую -и печатает каждую страницу до «-ой «- печатает каждую страницу, начиная с л-ой -Тпате Готовит вывод на указанное устройство пате. -Mdir Предварительно производит поиск макроопределений в указанном каталоге dir до перехода в каталог /usr/lib/groff/tmac/. Ну - печатает имя файла терминала, подключенного в качестве стандартного ввода. Синтаксис tty [option] Опции -s, —silent, —quiet Ничего не распечатывает, лишь возвращает код завершения. Приняты следующие коды: 0 стандартный ввод происходит с терминала 1 стандартный ввод поступает не через терминал 2 заданы неверные аргументы 3 ошибка записи Пример $ tty /dev/tty5 $ tune2fs - выполняет регулировку настраиваемых параметров второй расширенной файловой системы Linux. Синтаксис tune2fs [-1][-с max-mount-counts]l-e errors-behavior][-t\ [-i interval-between-checks]l-j][-J journal-options] [-И reserved-blocks-percentage]l-o [']mount-option[, — ]] [-r reserved-blocks-connt][-s sparse-super- flag] [-U user) [-9 group] [-C mount-count][-L volume-name][-M last-mounted-directory] [-0 ("] feature],... ]][-T tiae-last-cliecked]l-\) VVID] device
II. Команды 715 ЦИ -с max-mount-coums Регулирует счетчик максимального количества монтирований межт двумя проверками файловой системы. Если max-mount-counis равен О то о количестве монтирований заботится e2fsck и ядро. -е errors-behavior Меняет реакцию программ ядра при обнаружении ошибок. Параметр errors-behavior может принимать следующие значения: continue продолжать обычное выполнение remount-го перемонтировать файловую систему в режим "только для чтения" panic вызвать "панику" в ядре -f Вынуждает tune2fs выполнять очередную операцию, даже если явно имеются ошибки. Эта опция может быть полезна, скажем, для удаления такой особенности файловой системы как hasjournal (опция -О), когда из-за повреждений внешний журнал недоступен. -g group Устанавливает пользовательскую группу group, которая может использовать зарезервированные блоки. Параметр group может являться числовым значением GID или именем группы. -i interval-between-checks[d\m\w] Регулирует максимальный временной интервал между двумя проверками файловой системы. Флаг d определяет временной интервал в днях, m - в месяцах, w - в неделях; нулевое значение отменяет проверку по времени. -m reserved-blocks-percentage Регулирует процент зарезервированных блоков файловой системы. -г reserved-blocks-count Регулирует счетчик зарезервированных блоков на заданном устройстве device. -1 Выводит список содержимого суперблока файловой системы. -u user Устанавливает пользователя user, использующего зарезервированные блоки. Параметр user может быть числовым UID или именем пользователя. -С mount-count Устанавливает счетчик количества подключений файловой системы. -L volume-name Устанавливает метку тома файловой системы. Длина метки тома файловой системы ext2 (основная файловая система Linux) не моле г превышать 16 символов. -М last-mounted-directory Устанавливает последний монтируемый каталог файловом енсюмы
716 II Команды -О [лУеаШге[,...] Устанавливает (предшествующий плюс или без префикса) или отменяет (предшествующий символ Л) ряд указанных особенностей feature файловой системы. На сегодняшний день применяются следующие опции: sparse_super ограничивает число резервных суперблоков в целях сохранения пространства больших файловых систем filetype сохраняет информацию о типах файлов в элементах каталога has_journal аналог опции-j После установки или очистки sparse_super и filetype должна быть запущена e2fsck. Старые ядра не поддерживают такие особенности. -U UUID Устанавливает UUID файловой системы (см. uuidgen). -j Добавляет к данной файловой системе журнал в стиле ext3. Если опция -J не задана, для создания журнала подходящего размера будут использованы принятые по умолчанию параметры (размер файловой системы). Для применения журнала необходимо иметь ядро операционной системы, поддерживающее эту особенность. -J journal-options Перекрывает принятые по умолчанию параметры журнала ext3, используя опции, задаваемые в командной строке и разделенные запятыми. Знаки равенства (=) позволяют определять значения аргументов. Поддерживаются следующие журнальные опции (задается одна из этих двух): size^journal-size Создает внутренний журнал указанного размерау'оигпа/-яге в мегабайтах; размер журнала должен, по меньшей мере, составлять 1024 блока файловой системы (1 Мбайт, если используются блоки размером 1 Кбайт, 4 Мбайт, если используются блоки размером 4 Кбайт, и т.д.) и не может превышать 102400 блоков файловой системы. uevice=external-journal Подключает данную файловую систему к блокам устройства внешнего журнала, размещенного в external-journal. Внешний журнал должен быть предварительно создан с использованием следующей команды: mke2fs -О journaldev external-journal Причем, external-journal необходимо форматировать с тем же размером блока, как у использующей его файловой системы. Вместо непосредственного указания имени устройства журнала может быть задана метка том л в виде LABEL label или UUID UUID, хранимый в супербчоке ext2 при запуске журнала.
II. Команды 717 Чтобы отобразить метку тома устройства журнала или UUID, применяется команда dumpe2fs (см. также опцию -L команды tune2fs). -о [Л]вюил/-ерй"оп[,...] Устанавливает или очищает принятые по умолчанию опции монтирования файловой системы. Принятые по умолчанию опции могут быть перекрыты опциями, задаваемыми в файле /etc/fstab, или аргументами командной строки mount. Более старые ядра (до 2.4.20) не поддерживают такую возможность. Может быть задано несколько таких опций, разделенных запятыми. Те опции, которым предшествует символ л, будут очищены в суперблоке файловой системы, а которым предшествует символ + (или без префикса), будут добавлены к данной файловой системе. Могут быть добавлены или очищены следующие опции: debug разрешает выполнять отладку этой файловой системы bsdgroups при создании новых файлов эмулирует особенности BSD (они берут GID того каталога, в котором были созданы) user_xattr разрешает расширенные атрибуты, указываемые пользователем acl разрешает ACLs в стандарте Posix uid 16 запрещает 32-разрядные UID и GID (для старых ядер) journaldata при монтировании файловой системы с журналом все данные (и не только метаданные) фиксируются в журнале до их записи в основную файловую систему journal_data_ordered при монтировании файловой системы с журналом все данные записываются прямо в основную файловую систему до фиксации их метаданных в журнале journaldatawriteback при монтировании файловой системы с журналом все данные записываются в основную файловую систему после того, как их метаданные будут зафиксированы в журнале -s [0| 1 ] Отключает или включает особенность sparse_super (аналог опции -О sparse_super). -Т time-last-checked Предоставляет время, когда файловая система в последний раз проверялась с помощью e2fsck. Это значение применяется в сценариях, использующих LVM для выполнения snapshot (моментального снимка, или копии). Дублирование данных с использованием моментальных копий, содержащих только указатели на блоки данных и измененные данные, существенно экономит пространство и время создания дубля.
718 II Команды UmOUnt демо ipy файловые системы. К Синтаксис umount [-hV] umount -a [-nrvf][-t vfstype] umount [-nrvfj device\dir [...] Команда umount отключает файловые системы от дерева иерархии каталогов. Файловая система указывается или по имени каталога dir, к которому она была подключена, или по имени специального устройства device, которому она соответствует. Следует отметить, что файловая система не сможет быть демонтирована, если продолжает быть "занятой", т.е. на ней имеются открытые файлы или некоторые процессы имеют там рабочие каталоги. Опции -V Выводит информацию о версии программы и завершает ее. -h Выводит подсказку по команде и завершает ее. -v Подробно комментирует происходящее. -п Демонтирует без регистрации в файле /etc/mtab. -г Если демонтирование выполнить не удалось, пытается перемонтировать файловую систему только для чтения. -а Монтирует все файловые системы (кроме файловой системы ргос), описанные в /etc/mtab. -t vfstype Требует выполнения действий лишь для файловых систем указанного типа vfstype. Вообще vfstype является списком файловых систем, разделенных запятыми. Упомянутый список может префиксироваться выражением по, что перечисляет файловые системы, на которые никакие действия не распространяются. -f Принудительно демонтирует файловую систему в случае недоступности системы NFS. Пример # umount /dev/fdO I Демонтирует файловую систему накопителя на гибких магнитных дисках по имени устройства. # umount /rant/floppy t Можно при демонтировании указать также и точку монтирования (каталог иодкчю- чения), что показано во второй команде
II. Команды 719 Uri3ll3S - удаля- 1севдоним команды. В Синтаксис unalias abbrev Удаляет указанный псевдоним abbrev. Если вместо имени псевдонима стоит звездочка (символ *), удаляет все существующие псевдонимы, unalias - встроенная в оболочку команда, доступная в большинстве командных процессоров. 11ПЭГП6 - информирует о компьютере и операционной К системе, запущенной на нем. Синтаксис ипаше [option] Опции -a, —all Выводит подробную информацию в виде следующих столбцов: SYSNAME имя операционной системы NODENAME имя узла RELEASE релиз операционной системы OSVERSION версия операционной системы, включая дату выпуска MACHINE сведения о компьютере -m, —machine Выводит тип компьютера. -п, —nodename Печатает имя сетевого узла. -р, —processor Печатает тип процессора данного компьютера. -г, —release Печатает релиз операционной системы. -s, —sysname Печатает наименование операционной системы. -v Печатает версию операционной системы. Пример S ипаше -а Linux localhost.localdomain 2.2.14-6.1.1вшр #1 SHP Thu Apr 13 19:41:49 EDT 2000 i586 unknown $ UnCOmprGSS аспаковывает сжатые файлы l\ Синтаксис ипсошргевв [-f][-V]I-c][nane...]
720 II Команды Утилита uncompress распаковывает сжатые файлы, имена которых задаются аргументом пате при условии, что имена заканчиваются суффиксом .Z, а сами упакованные файлы содержат корректное магическое число. В результате упакованный файл, чье имя оканчивается суффиксом .Z, замещается оригинальным файлом, имя которого получается из имени сжатого файла после удаления суффикса. Магическое число - это специальное число в начале файла, позволяющее системе определить его тип. Оп ии -f Обычно пользователь получает приглашение подтвердить перезапись существующего файла. В случае задания опции -f производит перезапись без подтверждения. -с С помощью опции -с записывает сжатый файл на стандартный вывод; исходные файлы не меняются. -V Выводит информацию о версии программы и завершает ее работу. Пример При восстановлении сжатого файла обнаружилось, что уже существует файл prim42. Для подтверждения перезаписи существующего файла следует ввести у. т\ misha@localhostlocaldornain:/home/misha ,д^п, х_ tmishaMocalhost mishalt uncompress prim42.Z prim42 already exists. Do you wish to overwrite prim42 <y or n)? у tmishaBlocalhost misha]* | UniC] - удаляет дублирующиеся строки из отсортирован- К. ного «айла. Синтаксис uniq [option]...[input[output]] Команда uniq выполняет фильтрацию строк входного файла input, чтобы выявить повторяющиеся либо уникальные строки. Обычно ее применяют к файлам, отсортированным командой sort. Результат фильтрации записывается в файл output или на стандартный вывод. Огни. -с, —count Выводит в начале строки количество ее появлений, учитываются только появления, непосредственно предшествующие рассматриваемой строке. -d, —repeated Только печатает рядом стоящие дублирующиеся строки. -D, —all-repeated Печатает все дублирующиеся строки. -f, — skip-fields=n Пропускает без сравнения первые и полей.
II. Команды -i, — ignore-case При сравнении игнорирует разницу между соответствующими буквами верхнего и нижнего регистров. -s, — skip-chars=n При сравнении игнорирует первые п символов -u, —unique Печатает только уникальные строки. -w, —check-chars=« Сравнивает в строках не более чем п символов -п Синоним опции -f л. +п Синоним опции-s и. --help Выводит список опций и завершает программу. —version Выводит информацию о версии программы и завершает ее. Пример На примере обработки файла vwl объясняется смысл опций -с, -d, -D команды uniq. S cat vwl ssdd ssdd ghgh yuyu ssdd $ uniq -c vwl 2 ssdd 1 ghgh 1 yuyu 1 1 ssdd S uniq -d vwl ssdd $ uniq -D vwl ssdd ssdd $ UnZJp - распечатывает, тестирует и извлекает сжатые файлы из ZIP-архива, созданного также и под другими операционными системами. Синтаксис unzip [-Z][-cflptTuvz[abjnoqsCLHX]] /ile[. zip] [ file...] 1-х xfile...] l-d exdir] Аргумент file[.zip] указывает маршрут к ZIP-архиву, необязательный аргумент(ы) file задает член(ы) архива; компоненты архива описываются в виде списка и отделяются друг от друга пробелами.
II. Команды On ии ■Z Устанавливает режим zipinfo. Если -Z является первой опцией командной строки, все остальные рассматриваются как опции zipinfo. -с Извлекает файлы на стандартный вывод (экран), при этом автоматически выполняет преобразование ASCII-EBCDIC. -f Обновляет существующие на диске файлы, извлекая лишь более новые, чем имеющиеся на диске. -1 Распечатывает список архивных файлов в коротком формате. -р Извлекает файлы на конвейер всегда в двоичном режиме так, как они хранились, без каких-либо преобразований, -t Тестирует архивные файлы, проверяя их контрольные суммы. -Т Устанавливает временную метку архива По самому новому файлу в нем. -и Обновляет существующие на диске файлы и при необходимости, в отличие от опции -f, создает новые. -v Устанавливает режим подробной диагностики, дополнительно информирует о методе сжатия, размере, коэффициенте сжатия, контрольной сумме. -z Отображает только комментарии к архиву. -а Выполняет преобразование текстовых файлов из формата хранения. Опция -аа заставляет выполнять извлечение любых файлов как текстовых независимо от их фактического типа. -Ь Рассматривает все файлы как двоичные, не выполняя никаких преобразований текста. -С Выполняет сопоставление имен файлов без учета регистра. -j Помещает все файлы в извлекаемый каталог, по умолчанию в текущий, не воссоздавая архивную структуру каталогов. -L Конвертирует имена файлов в символы нижнего регистра. -М Пропускает весь вывод через внутренний пейджер подобно команде more. В конце экрана unzip создает паузу с приглашением вида —Моге— -п Никогда не перекрывает существующих файлов, -о Перекрывает существующие файлы, не требуя подтверждения, -q Запрещает вывод сообщений при обработке. -s Преобразует пробелы в именах файлов в подчеркивания. -X Восстанавливает информацию, касаюнгуюся владельца н защиты файлов. Для Unix-образных систем эта информация касается владельца и группы (UID/GID). -х file Указывает в виде списка архивные файлы, исключаемые из обработки. -d exdir Задаст каталог exdir, в который помещаются извлеченные из архива файлы. По умолчанию все извлекаемые файлы и подкаталоги располагаются в текущем каталоге.
II. Команды 723 UptltT)6 - выводит информацию о работе системы. Синтаксис uptime uptime I-V] Команда uptime повествует о текущем времени, как долго работает система, какова средняя загрузка системы за последние 1.5 и 15 минут. Опци1 -V Выводит информацию о версии программы и завершает ее. Пр ер $ uptime 7:37pm up 3:09, 7 users, load average: 0.16, 0.03, 0.01 $ useradd открывает счет для нового пользователя или меняет информацию о пользователе, заданную по умолчанию. Синтаксис useradd [-U uid [-o]][-g group][-G group, ][-d Лоше][-Б shell] [-m [-k template]]I-f inactive]]-^ expire] name useradd -D |-g group][-b jbase][-s shell][-f inactive][-e expire] Вызванная без опции -D команда useradd создает счет для нового пользователя по имени пате, а также его исходный каталог, в который будут скопированы файлы инициализации. Основные опции -u uid [-о] Определяет уникальное числовое значение идентификатора пользователя (UID) за исключением случаев использования опции -о. Значения между 0 и 99 обычно резервируются для системных счетов. Опция -о разрешает дублировать UID в пределах системы. -g group Определяет группу, к которой будет принадлежать пользователь после регистрации в системе. -G group [,...] Определяет членство пользователя в дополнительных группах, перечисленных через запятые в виде списка. -d home Указывает исходный каталог пользователя. -s shell Задаст имя командного процессора, или оболочки, испольлсмой после регистрации пользователя.
724 II Команды -m [-к template] Создает исходный каталог пользователя, если он не существует В случае задания опции -к копирует в этот каталог каталоги и файлы инициализации из каталога template, в противном случае - из /etc/skel -е expire Определяет дату в формате MM/DD/YY (месяц/день/год), завершающую срок действия счета пользователя. В случае присутствия опции -D указывает промежуток между очередными изменениями пароля. -f inactive Указывает промежуток между днем устаревания пароля и днем запрещения счета пользователя. По умолчанию параметр inactive равен -1, что вообще запрещает применение подобной особенности. -D Показывает текущие значения полей пользовательского счета, заданные по умолчанию, или изменяет их на значения, указанные в командной строке. -b base Определяет префикс имени исходного каталога пользователя. Пример t useradd andry t userdel удаляет счет пользователя из системы. Синтаксис userdel [-r] пате Удаляет счет пользователя name. пции -г Удаляет также исходный каталог пользователя вместе с его содержимым. Если пользователь, счет которого предполагается удалить, работает в системе, подобная операция не будет выполнена. При ер Попытка удалить счет зарегистрированного в системе пользователя завершилась безрезультатно. I userdel andry userdel: user andry is currently logged in I USGrS - выводит список пользователей, зарегистрировавшихся в настоящий момент в системе. Синтаксис users [option]...[file]
II. Команды 725 Аргумент/i/e указывает, из какого файла извлекается информация о пользователях Если файл не указан, используется /var/run/utmp, хотя возможны и другие варианты. В общем случае используется /var/log/wtmp. On 1ии -help Выводиг список опций и завершает программу, -version Выводит информацию о версии программы и завершает ее. Пример # users misha root root root Sofia t Суперпользователь работает на нескольких виртуальных терминалах. UUQGCOQG - декодирует файл, созданный с помощью К uuencode. Синтаксис uudecode [-о outfile]lfile]... Программа uudecode преобразует файл по имени file (по умолчанию стандартный ввод), закодированный с помощью uuencode, в оригинальный формат. В результате возникает файл по имени пате (см. uuencode), имеющий режим оригинального файла, не сохраняются лишь SETUID и биты исполнения. Опции -о outfile Вместо того чтобы создавать оригинальный файл по имени пате (см. uuencode), создает файл outfile. Если outfile или пате установлен в значение /dev/stdout, направляет результат на стандартный вывод. Программа uudecode самостоятельно "решает", какая из двух поддерживаемых схем кодирования использовалась. UUGnCOQG - кодирует бинарный (двоичный) файл. К Си аксис uuencode I-m][file] name Используется для пересылки двоичных файлов в таких средах передачи данных, где не поддерживается никакой другой формат кроме обычного ASCII. Программа uuencode считывает содержимое файла по имени file (по умолчанию стандартного ввода) и записывает кодированную версию на стандартный вывод. В процессе кодирования применяются только изображаемые символы ASCII, а для дальнейшего использования программой uudecode включаются режим файла и аргумент пате. Если пате установлен в значении /dev/stdout, результат кодирования направляется на стандартный вывод. По умолчанию используется стандаргное ии-коднрованпе.
726 II Команды Опции -ni Вместо стандартного UU-кодирования (Unix-Unix кодирования) используется basc64. Следует учесть, что системы на базе MS DOS/Windows/Windows95/Windows98/ WindowsNT не поддерживают UU-кодирования. Пример $ tar cf - rab|compress|uuencode primer|mail sofiaedniephost $ Упаковывается и сжимается исходное дерево rab, затем кодируется (UU-кодиро- вание) и с помощью mail передается на дистанционную систему. UUldgen - создает новый UUID. Синтаксис uuidgen [—г|—t] uuidgen - утилита командной строки, создающая новое значение UUID (universally unique identifier - универсального и уникального идентификатора). Предполагается, что новый UUID уникален не только в рамках локальной системы, но и среди всех UUID, созданных на других системах в прошлом и будущем. Опции -г Создает UUID по методу случайных чисел. Для этого требуется, чтобы операционная система имела высококачественный генератор случайных чисел, такой, как /dev/random. -t Создает UUID, основывающийся на системных числах и плюс системный Ethernet-адрес оборудования, если таковое имеется. Vim - текстовый редактор. К. Синтаксис vim [option I[file... ] vim [option] - vim [option] -t tag vim [option] -q {errorfile] ex view gvim gview rvim rview rgvim rgview
II. Команды 727 vim - текстовый редактор, совместимый с известным vi и расширяющий его возможности. Может быть использован для редактирования любого текста в формате ASCII, часто применяется для редактирования программ. По сравнению с vi редактор vim предлагает целый ряд дополнительных возможностей: многоуровневая undo (отмена), окна и буфера, синтаксическое выделение текста, редактирование в командной строке, помощь в режиме on-line, выбор в графическом режиме и т.д. Запустив vim, можно получить подсказку с помощью команды :help. Часто запускают vim, указав в командной строке имя лишь одного файла file, хотя можно задать целый список. Если имя файла не задано, vim запускается с пустым буфером. В случае задания списка файлов первый из них считывается в буфер, а курсор устанавливается на первой строке буфера. Если вместо имени файла указан дефис, vim считывает стандартный ввод. Опции могут быть заданы в любом порядке: до или после имен файлов. Основные опции +[пит] Для первого файла устанавливает курсор на строке с номером пит. Если параметр пит пропущен, устанавливает курсор на последней строке. +/{pat} Для первого файла устанавливает курсор в месте первого появления образца pat. +command, -с command После того как первый файл будет считан, запускает команду command. Если команда содержит пробелы, ее следует заключать в двойные кавычки. -Ь Переходит в режим редактирования двоичных или исполняемых файлов. -С Устанавливает режим совместимости: при этом работа в vim подобна работе в vi. -е Запускает vim в режиме Ех, напоминающем работу в редакторе ex. Осуществляет переход в обычный режим с помошью команды :vi. -g Включает поддержку GUI. -h Предоставляет подсказку по аргументам и опциям командной строки, а затем завершает vim. -m Запрещает модифицировать файлы. -п Не использует область сохранения, что делает невозможным восстановление файлов после сбоя. -о[и] Открывает и окон. Если параметр и опущен, открывает одно окно для каждого файла. -R Устанавливает режим только для чтения. Вы еще можете редактировать буфер, но перезаписывать файл запрещено. Но если вы все же стремитесь перезаписать файл, добавьте восклицательный знак к существующей команде редактора ех, а именно :w!. -г Создает список файлов области сохранения с включением информации об их использовании для восстановления.
728 II Команды -г file Для восстановления аварийно завершившегося сеанса редактирования использует файл своппинга с именем file. Это имя точно такое же, как и имя редактируемого текстового файла, лишь добавлено расширение .swp. -s Запрещает выдачу сопутствующих сообщений. Действует лишь тогда, когда редактор стартовал в режиме Ех или когда до опции -s была указана опция -е. -s scriptin Указывает считываемый файл сценария по имени scriptin. Символы этого файла интерпретируются как набираемые на клавиатуре. Аналогичный эффект мог быть достигнут с помощью команды rsource! {scriptin}. Если конец файла будет достигнут до завершения редактора vim, продолжает считывать символы с клавиатуры. -Т terminal Сообщает vim имя используемого терминала. -u vimrc Использует для инициализации команды из файла vimrc. Если понадобилось пропустить команды инициализации, следует установить значение параметра vimrc в NONE. -U gvimrc Использует для инициализации GUI команды из файла gvimrc. Если понадобилось пропустить команды инициализации, следует установить значение параметра gvimrc в NONE. -V Подробно комментирует происходящее. -v Запускает vim в режиме редактора vi. -w scriptout Подробно регистрирует все набираемые пользователем клавиши в файле сценария по имени scriptout. Если файл scriptout уже существует, добавляет в него символы. В дальнейшем созданный сценарий может быть использован через командную строку vim -s или команду редактора :source!. -W scriptout Действует подобно опции -w, но перекрывает ранее существующий файл. -х При записи файлов применяет шифрование. Приглашает ввести ключ шифрования. Отмечает конец опций. Аргументы, идущие после этой опции, рассматриваются как имена файлов. -t tag В редактируемом файле первоначально устанавливает курсор в позицию с указанным тегом. Чаше всего применяется для редактирования исходных текстов программ на языке С. В этом случае tag является именем функции, и курсор будет установлен в ее начало. -q [errorfile] Запускает vim в режиме quickFix: считывает файл errorfile и регистрирует в нем первую ошибку. Обычно редактор вызывается командой vim, все опции при этом устанавливаются по умолчанию. Команда ех инициирует режим ранее очень популярного в Unix редактора Ex. Команда view создаст тот же эффект, что и опция -R: устанавливает режим только для чтения. GUI-версия запускается с помощью gvim или gview, что может
II. Команды 729 также быть выполнено с помощью команды vim с опцией -g. При этом создается новое окно. Команды rvim, rvicw. rgvim, rgview подобны своим вышеописанным аналогам с тем лишь исключением, что предлагают ограничивающие режимы - без запуска команд оболочки и др. Нужно сказать, что команды, стартующие в GUI-версии, входят не во все дистрибутивы. В некоторых версиях Linux, наоборот, команда vim отсутствует, а команда vi запускает расширенный вариант - редактор vim. Пример Так выглядит заставка VIM версии 5.6.11. = root@localhost.localdomain:/root ''_' п Шайл 1 - ** " < i i < Правка Settings Справка VIM - Vi IMproved version 5*6,11 by Bran Moolenaar et al* Vim is freela distributable tape :help uganda<Enter> if aou like Vim tape :q<Enter> to exit tape :help<Enter> or <F1> for on-line help tape :help version5<Enter> for version info X Л / VISUCIO - редактирует конфигурационный файл sudoers. Синтаксис visudo I-c]|-f sudoers][-q][-s][-V] visudo - это специальный редактор для внесения изменений в файл sudoers (/etc/ sudoers). Команда sudo, позволяющая авторизованным пользователям запускать команды с привилегиями суперпользователя или других пользователей, управляется и конфигурируется с помощью файла конфигурации под названием sudoers. Для команды sudo очень существенна правильная конфигурация, ибо некорректная конфигурация несет множество проблем, создавая угрозу безопасности системы. Команда visudo блокирует файл sudoers, препятствуя параллельным редактированиям и создавая условия для модификации файла конфигурации в безопасном режиме. Если файл sudoers в настоящий момент редактируется кем-то еще, вы получите сообщение sudoers file busy, try again later (с просьбой попытаться его отредактировать попозже). После редактирования команда visudo осуществляет синтаксический контроль содержимого файла sudoers и не сохраняет изменения, если обнаруживает ошибки. Обнаружив ошибку, visudo печатает сообщение, указывая номер строки, где произошла ошибка, и направляя пользователю приглашение What now? (Ч го сейчас деля! ь?). В ответ пользователь можно ввести такие символы:
730 II. Команды е повторно редактирует файл sudocrs, курсор располагается в том месте, где произошла ошибка х завершает работу без сохранения изменений Q завершает работу, сохраняя изменения Опци -с Переходит исключительно в режим проверки существующего файла sudoers и направляет сообщение на стандартный вывод по поводу состояния файла. В случае успешной синтаксической проверки завершает работу с кодом завершения 0, в противном случае — с кодом завершения 1. -f sudoers Указывает на альтернативный файл sudoers. -q Переходит в режим минимальных сообщений, не печатая детали по поводу синтаксических ошибок. -s Выполняет строгую проверку файла sudoers. Если некоторый псевдоним используется до того, как он был определен, visudo считает это синтаксической ошибкой. Следует отметить, что невозможно отличить псевдоним и имя хоста или имя пользователя, содержащие исключительно прописные буквы, цифры и символ подчеркивания. -V Выводит информацию о версии программы и завершает ее выполнение. vmstat вы ает статистик по виртуальной памяти. Синтаксис vmstat [-n][delay [count]] vmstat [-V] Программа vmstat информирует о процессах памяти, страничном обмене, активности ЦП и т.д. Первый отчет содержит средние значения по всем направлениям после последней перезагрузки. Дополнительные отчеты предоставляют информацию за указанный период времени delay, задаваемый в секундах, между обновлениями. ци -п Отображает информационный заголовок листинга только однажды, а не периодически. -V Распечатывает версию программы. Аргумент count определяет количество обновлений. Упомянутые отчеты помогают выявить "узкие" места в системе. Программа \ mstat ие требует специальных полномочий; она не учитывает саму себя как выполняющийся процесс.
II. Команды Пример S vmstat Procs memory swap io system cpu г Ь w swpd free buff cache si so Ы bo in cs us sy id 10 0 10112 724 3772 7568 1 4 б 2 164 20 1 1 98 $ Ниже приведены описания полей листинга: г число процессов, ждущих запуска b число процессов в состоянии ожидания w число процессов, выгруженных во внешнюю память: содержимое освобождаемой страницы записано во внешнюю память swpd количество используемой виртуальной памяти (Кбайты) free количество свободной памяти (Кбайты) si количество памяти, загружаемой с диска (Кбайт в секунду) s о количество памяти, выгружаемой на диск (Кбайт в секунду) Ы число блоков, посылаемых на блочное устройство (блоков в секунду) bo число блоков, полученных с блочного устройства (блоков в секунду) in число прерываний в секунду, включая прерывания от таймера с s число контекстных переключений в секунду Количество процентов от общего времени ЦП для: us пользовательского времени sy системного времени id времени простоя W - показывает, кто зарегистрирован в системе и чем занят. интаксис w -[husfV][user] Наблюдение за активностью пользователей - одна из основных задач системного администратора, которому необходимо знать, кто и где зарегистрирован, чем занимается, а главное - как задействованы системные ресурсы. Ничто не должно ускользнуть от бдительного ока сисадмина. Если в команде w задано имя пользователя, user, то будет показана информация, лишь касающаяся конкретного пользователя. В начале вывода команды w показано текущее время, как долго система работает, сколько пользователей зарегистрировано, показатели средней нагрузки. Три показателя средней нагрузки означают нагрузку в течение периодов времени, равных 1,5 и 15 минут соответственно, если читать слева направо. Средняя нагрузка в течение 1 минуты является показателем кратковременной iiai рузкн процессора, а сред-
732 II Команды няя нагрузка в течение 15 минут - показателем его долговременной нагрузки. В периоды кратковременной активности ЦП средняя нагрузка в течение 1 минуты оказывается высокой, тогда как средняя нагрузка в течение 15 минут - низкой. Средняя нагрузка играет важную роль только с точки зрения числа установленных процессоров. Как правило, если средняя нагрузка меньше числа установленных процессоров, это означает, что система обладает достаточно мощными процессорами. Так, четырехпроцессорная машина со средней нагрузкой 3.5 не считается перегруженной, ее ресурсы используются полностью. Опции -h He выводит заголовок. -и Игнорирует имя пользователя, отображая текущий процесс и время ЦП. -s Использует краткий формат вывода, не сообщая, как обычно, время регистрации, JCPU (время, использованное всеми процессами данного терминала) или PCPU (время, использованное текущим процессом). -f Включает печать поля FROM (откуда: имя дистанционного хоста). -V Выводит информацию о версии программы. Пример ♦ w 22:54:59 up 7 min, 3 users, load average: 1.24, 1.06, 0.53 USER TTY FROM LOGINe IDLE JCPU РСРП WHAT misha ttyl - 10:53pm 1:01 9.38s 8.97s find / -name yu root :0 - 10:50pm ? 0.00s 7.06s /usr/bin/gnome- root pts/0 :0.0 10:52pm 0.00s 1.12s 0.12s w Все зарегистрированные пользователи принадлежат локальной системе. wan - посылает сообщение на любой терминал. Синтаксис wall [message] Посылает сообщение message любому пользователю на его терминал, полномочия которого с помощью mesg установлены в значение yes. Сообщение может быть задано как аргумент команды wall или передано на стандартный ввод wall. Если терминал используется как стандартный ввод, сообщение будет завершено при нажатии Ctrl+D. Пример Пришедшее широковещательное соибщенис даже вклинится в информацию, выводимую по команде man.
Команды 733 Щ root@localhost localdomain: /root Файл Правка Settings Справка DESCRIPTION Xdm manages a collection of X display, which nay be on the local host or remote servers. The design of xdm was guided ba the needs of X terminals as well as the X Conl sortium standard XDMCP, the X. HI splat) Мдплорг Control Prnl tocnl. Kdm provides services similar to those provided ba inil, 96tt.a and login on character terminals: prompting Broadcast message from misha (tta2) Tue Oct 24 23:39:30 2000... Внимвние! I WC - подсчитывает слова, символы или строки в одном К или более файлах. Синтаксис wc [option]...[file] Подсчитывает количество байт (символов), слов, разделенных пробелами или другими неизображаемыми символами, строк, разделенных newline (символом новой строки), в указанном файле или в стандартном вводе, если имя файла не задано или вместо имени стоит дефис. Печатает строку счетчиков для каждого файла, за которыми следует собственно имя файла. Если в командной строке задано более одного файла, распечатывает итоговую строку total (ИТОГО), содержащую накопленные значения счетчиков. Эти счетчики печатаются в следующем порядке: строки, слова, байты. По умолчанию каждый счетчик представляет из себя 7-байтное поле, выравненное по правой границе, между счетчиками имеется пробел, так что стандартный вывод wc происходит по столбцам. По умолчанию we распечатывает все три счетчика. Опции -с, —bytes, —chars Печатает только счетчики байт. -w, —words Печатает только счетчики слов. -1, —lines Печатает только счетчики строк, подсчитывая newline. -L, —max-line-length Распечатывает только длину самой длинной строки. Приме• П X $ wc -L priml25 62 priml25 S
734 II Команды WnlCtl отображает полный маршрут к указанной коман е. Синтаксис which [option] I — ] programname [ ] Программа which принимает один или более аргументов programname, распечатывая для каждого полный маршрут доступа к нему. В качестве аргументов задаются имена исполняемых файлов или сценариев. Оп ии --all, -а Распечатывает все совпавшие исполняемые файлы по содержимому PATH, а не только первый. —read-alias, -i Считывает псевдонимы со стандартного ввода, направляет на стандартный вывод информацию по совпавшим. —skip-alias Игнорирует опцию —read-alias, если таковая имеется. —skip-dot Пропускает все каталоги из PATH, имена которых начинаются с точки. —skip ~ Пропускает все каталоги из PATH, имена которых начинаются с символа ~ (тильда), и все исполняемые модули, расположенные в каталоге, указываемом переменной НОМЕ. —show-dot Если имя каталога из PATH для исполняемого файла начинается с точки, тогда вместо полного маршрута (полного пути) печатает ./programname. --show-tilde Выводит тильду, когда каталог совпадает с каталогом, указываемым НОМЕ. —tty-only He обрабатывает опции, идущие справа за этой, если они поступают не с try (не с терминала). —version, -v, -V Выводит информацию о версии программы и завершает ее. —help Выводит краткое описание опций программы и завершает ее. Пример $ which vmstat /usr/bin/vmstat $ WhO - сообщает о пользователях, зарегистрировавших- К. ся в настоящее время. Си к с who [option]... [file] [am i]
II. Команды 735 Если не указаны никакие опции, печатает следующую информацию о каждом зарегистрировавшемся пользователе: имя, терминал, время регистрации, имя дистанционного узла (для подключившихся пользователей других систем) или Х-дисплей. Если набрана команда who am i, сообщает все о пользователе, запустившем эту команду. Опции -т Синоним who am i. -i, -u, —idle После времени регистрации указывает количество часов и минут бездействия пользователя. Точка в этом поле информирует, что пользователь был активен в течение последней минуты, а слово old (старый) - бездействовал более суток. -1, —lookup Пытается канонизировать (узаконить) имена узлов, найденные в файле utmp, через DNS. По умолчанию эта опция не устанавливается; при ее использовании слишком замедляется доступ к другим сетям по телефонным каналам. -Н, --heading Печатает заголовки столбцов листинга. -w, -Т, —mesg, —message, —writable После каждого имени печатает символ, указывающий статус сообщений пользователя: + разрешается писать сообщения - запрещается писать сообщения ? не может обнаружить терминальное устройство Пример $ who am i localhost.localdomainlmisha tty30ct 8 15:56 $ whois - осуществляет поиск официальной контактной информации из различных авторитетных источников Синтаксис whois [option]... object Выяснив адрес дистанционного соединения, системный администратор может воспользоваться данной информацией для установления связи с администраторами конкретных узлов сети и уведомления их о любых возникших у него проблемах. Для этой цели прежде всего и существует команда whois, осуществляющая поиск официальной контактной информации из различных авторитетных источников. Если известно доменное имя сайта (object), с помощью команды whois можно сделать запрос в организацию IntcrNIC, где хранится официальный реестр имен Internet, чтобы получить необходимую контактную информацию. К полезной информации относится организация (registrar), зарегистрировавшая рассматриваемое доменное имя.
736 II Команды что может пригодиться, когда приходится выражать протест против SPAM (принудительно рассылаемого "сетевого мусора") или агрессии в сети. Регистрация обязательна не только для доменных имен, но и для всех сетей Internet. В Северной и Южной Америке, отдельных странах Африки и Карибского бассейна эта информация регистрируется организацией ARIN (American Registry for Internet Numbers - Американский реестр номеров Internet). Запрос на сервер whois реестра ARIN может быть направлен таким же образом, как и на любой другой сервер whois, но иа сей раз следует указать адрес сети, а не доменное имя. Сервер whois организации ARTN - это whois.arin.net. Опции —version Выводит номер версии, авторов н лицензионную информацию. —help Отображает краткую подсказку. -с file, — config=/j/e Использует file в качестве файла конфигурации вместо принятого по умолчанию. Хост, иа который посылается запрос, берется нз глобального файла конфигурации. -h host, — hosl=host Перекрывает любые хосты в файле конфигурации и напрямую запрашивает host. -р port, —povt=port Указывает номер порта, используемый при запросе host. -f, —force-lookup Запрашивает дистанционный хост в любом случае, даже если текущий объект доступен из кэша. -v, —verbose При запуске выводит подробную отладочную информацию. Можно увеличить объем выводимой информации, применив опцию -w. -n, —no-redirect Запрещает перенаправлять запросы от одного сервера к другому. -s, —no-whoisservers Отключает встроенную поддержку службы whois-servers.net. -a, —raw Запрещает реформатирование запроса. -i, —display-redirections Отображает каждый шаг, переадресовывая запрос от сервера к серверу. По умолчанию отображает только последний ответ. -d, —disable-cache Полностью отключает чтение и запись в кэш. -г, — rwhois Использует для запроса протокол rwhois вместо HTTP или whois. —rwhois-display=di.sp/av Просит серверы rwhois, принимающие запросы, отображать результаты иа указанном дисплее display. —rwhois-limit=/wiir Просит серверы rwhois, принимающие запросы, ограничить их отклики лишь случаями совпадения, количество которых не должно превышать limit.
II. Команды 737 По умолчанию запросы, посылаемые в InterNIC no команде и hois, направляются по адресу whois.intcrnic.net, однако это позволит лишь получить сведения о том в каком из многочисленных реестров имен Internet содержится авторитетная информация по указанному домену. Пример 5 whois -h whois.networksolutions.com example.com Registrant: Internet Assigned Numbers Authority (EXAMPLE-DOM) 4676 Admiralty Way, Suite 330 Marina del Rey, CA 90292 US Domain Name: EXAMPLE.COM Administrative Contact, Technical Contact, Billing Contact: Internet Assigned Numbers Authority (IANA) iana8IANA.ORG 4676 Admiralty Way, Suite 330 Marina del Rey, CA 90292 US 310-823-9358 Fax 310-823-8649 Record last updated on 07-Jan-2003. Record expires on 18-Aug-2006. Record created on 17-Aug-1996. Database last updated on 15-May-2003 09:10:00 EDT. Domain servers in listed order: A.IANA-SERVERS.NET 192.0.34.43 B. IANA-SERVERS.NET 193.0.0.236 В большинстве случаев связь целесообразно устанавливать по техническим вопросам, хотя в приведенном выше примере это равнозначно установлению связи по административным вопросам, а также по вопросам оплаты счетов: iana@IANA.ORG. WML© - ю ылает сооб ение другому пользователю. IV Синтаксис write user [ ttyname] Команда write позволяет общаться с другими пользователями системы, копируя строки со своего на их терминал. Когда вы набрали команду write, то пользователь, которому вы направляете сообщение, получит его со следующим заголовком: Message from ваве_вняЩваш_узел on Basr_tty at hbzmm В этом заголовке указывается, от кого пришло сообщение, с какого терминала (enmtty) и когда было отправлено (часы и минуты). Любые строки, которые вы затем набираете на своем терминале, будут копироваться на его терминал. Комбинация Ctrl+D завершит ваше послание. Ваш собеседник При этом получит EOF, указывающий, что общение завершено.
738 II. Команды Вы можете запрет ить другим пользователям, но не суперпользователю, писать вам. Для этого существует команда mesg. В команде write всегда указывается имя user вашего собеседника. Если ваш собеседник захочет ответить, он также должен запустить write. Но пользователь, которому вы собираетесь направить сообщение, мог зарегистрироваться более чем на одном терминале. В этом случае вы можете дополнительно указать терминал ttyname (ИуЗ или pts/1, или что-то в этом роде). Пример Пользователь sofia с помощью команды write направила коротенькое сообщение пользователю misha. Вот что увидел misha на своем терминале: si misha@locelhost.localdomain:/home/misha [mishaGlocalhost misha]t Message from sofiaElocalhost.localdomain on tty4 at СЮ:1Б Привет, Миша EOF writelog - 10бавляет элемент в журнал INN. Синтаксис writelog паше text Сценарий writelog применяется, чтобы записать элемент в журнал или отправить его по почте. Параметр name указывает имя журнала (log file), куда записывается элемент. Если в качестве имени задается слово mail, элемент будет отправлен по почте администратору службы новостей. Записанная или отправленная информация содержит текст text, задаваемый в командной строке, с отступом в четыре пробела. Чтобы препятствовать одновременному обновлению журнала, используется shlock. мобильная и позволяющая работать в сети оконная система. К Х-консорциум допускает использование нескольких имен системы, наиболее распространенные такие: X, XII, X Window System. X - многооконная система, обеспечивающая вывод на экран нескольких окон с изменяемыми размерами. Следовательно, одновременно на экран можно вывести несколько приложений. В отличне от многих оконных систем, имеющих жесткий встроенный пользовательский интерфейс, на основе X можно построить пользовательский интерфейс любого типа. Воистину уникальная особенность X состоит в том, что эта система основана на сетевом протоколе. В системе X термины "клиент" и "сервер" имеют несколько иной смысл. X Window состоит из трех основных частей:
II. Команды 739 а Программное обеспечение сервера, которое управляет вашим выводом на экран, а также клавиатурой и мышью. Q Программное обеспечение клиента, которое кроме обеспечения графического пользовательского интерфейса выполняет для пользователей целый ряд конкретных функций, таких, как управление базой данных ресурсов X или передача электронной почты. Q Коммуникационное программное обеспечение. В системе X возможны многие режимы работ: несколько клиентов могут взаимодействовать с одним сервером, несколько различных приложений могут тем не менее работать с одним экраном, один клиент может Контактировать с несколькими серверами и даже выводить одну и ту же информацию на разные экраны. Существуют две реализации системы: D Клиент и сервер выполняются на одном компьютере. В этом случае коммуникации имеют форму передачи данных между процессами через разделяемую память в виде именованных программных каналов. D Клиент и сервер выполняются на разных компьютерах, подключенных к сети. Поскольку X не зависит от сети, здесь может использоваться любая физическая линия: Ethernet, Token Ring, X25, последовательные линии. Информация, передаваемая между сервером и клиентом, является независимой от устройства, поэтому вовсе не обязательно, чтобы компьютеры имели один и тот же процессор или операционную систему. X позволяет "скрывать" архитектуру сети, пользователю даже не требуется знать, что его приложение работает в сети. X поддерживает иерархию перекрываюшихся окон, текстовые и графические операции на монохромных и цветных дисплеях. Количество программ, использующих X, чрезвычайно велико: эмуляторы терминалов, оконные менеджеры, средства управления доступом, менеджеры дисплея, растровые редакторы, серверы шрифтов, часы, программы, реализующие почтовый интерфейс, различные инструменты, манипулирующие ресурсами системы, интерфейсы с Netscape Navigator, программы, необходимые при работе с MIME-типами, и многое др. Запустить Х-сервер и исходный набор клиентских приложений можно двумя способами: с помощью менеджера дисплея xdm или программы xinit. На компьютерах, гае поддерживается несколько оконных систем, удобнее использовать xinit (вернее, сценарий startx, хотя помимо стандартного можно создать собственный сценарий на основе xinit). Каждый Х-сервср имеет имя в следующем формате: hoslname:displaynumber:screennumber Здесь hostname задает имя сетевого узла (машины), к которому физически подключен дисплей, displaynumber и scrcennumber определяют соответственна дисплей и экран (для дисплеев с несколькими мониторами) по умолчанию. На многопользовательских машинах может быть несколько дисплеев, поэтому каждому из них присваивается номер (нумерация с 0). На POSIX-снстсмах имя дисплея, принятое по умолчанию, хранится в переменной окружения DISPLAY. Эта переменная устанавливается антомашчесьи эмулятором терминала под названием xtcrni. Ilo если вы регистрируетесь на др> ivh машине сети, то переменную DISPLAY придется устаиавливап. вручную.
II. Команды Х-сервер прослушивает запросы на подключение по различным коммуникационным каналам: сетевые потоки, разделяемая (совместно используемая) память и т.д Параметр hostname позволяет определить тип используемого канала (транспортный уровень). Х-серверы поддерживает следующие типы подключений: local hostname заменяется пустой строкой, например, :0 или :1 TCPIP в этом случае hostname представляет из себя полное Internet-имя или IP-адрес: 168.115.45.10:0 или ах.сот:0. DECnet в качестве hostname указывается имя сетевого узла, за которым следуют два символа двоеточия, например, hydropark::l. Большинство Х-программ принимают аргументы командной строки, описывающие геометрию окна, в форме -geometry WIDTHxHEIGHT+XOFF+YOFF. Все параметры опции -geometry являются числами, описывающими желаемый размер и расположение окон приложений. Ширина WIDTH и высота HEIGHT в зависимости от приложения обычно измеряются в пикселах либо в символах. XOFF и YOFF измеряются в пикселах и указывают смещение от одного из углов экрана. Эти смещения указываются между однотипными границами окна и экрана: +XOFF левая граница окна расположена на XOFF пикселов от левой границы экрана; XOFF может принимать отрицательное значение, в этом случае левая граница окна выходит за пределы экрана -XOFF правая граница окна расположена на XOFF пикселов от правой границы экрана и тоже может принимать отрицательное значение + YOFF верхняя граница окна лежит на YOFF пикселов ниже верхней границы экрана; YOFF может принимать отрицательное значение, в этом случае верхняя часть окна выходит за пределы экрана -YOFF нижняя граница окна лежит на YOFFnHKcenoB выше нижней границы экрана н тоже может принимать отрицательное значение. Смещения должны быть заданы в виде пар. Следующие спецификации размещают окно в один из четырех углов экрана: +0+0 верхний левый угол -0+0 верхний правый угол -0-0 нижний правый угол +0-0 нижний левый угол Вид окон определяется программами, называемыми менеджеры окон (в лнтсрат} ре можно встретить термин администраторы окон, или диспетчеры окон). Дистриб> дня X приходит с менеджером окон twm, который поддерживает перекрывающиеся окна, всплывающие меню, технологию point-and-click (указал, щелкнул - и перетаскивай элементы, куда требуется) и многое др. На сегодняшний день наберется добрый десяток подобных менеджеров окон. Х-сервср поддерживает разные шрифты, в том числе и масштабируемые, npctoc- тавляст возможность создать шрифт нужного размера из исходного образца. Сервер поддерживает масштабирование векторных и растровых шрифтов, причем в первом случае рс»ультаты значительно лучше. Х-ссрвер получает шрифты из инчнвнтчальных
II. Команды 741 файлов, хранимых в каталогах файловой системы, от одного или более серверов шрифтов или из комбинированного источника: из каталогов и серверов шрифтов. Файлы растровых шрифтов обычно создаются путем компиляции текстового описания шрифтов в двоичный формат с помощью bdftopef. БД шрифтов создается при запуске программы mkfontdir в каталоге, содержащем исходную или скомпилированную версию шрифтов. В любом случае в каталог добавляются шрифты, a mkfontdir должна быть перезапущена, чтобы сервер мог найти новые шрифты. Чтобы вынудить сервер повторно читать БД шрифтов, следует переустановить маршрут, ведущий к шрифтам, это помогает реализовать программа xset. Для просмотра доступных шрифтов используются программы xfontsel и xlsfonts. Имена шрифтов обычно очень длинны, так как содержат всю уникальную информацию, необходимую для идентификации шрифта. Седьмое поле имени предназначено для указания размера (высоты) шрифта в пикселах, восьмое - для размера указателя, двенадцатое, измеряемое в десятых долях пиксела - средняя ширина шрифта. Сервер шрифтов, принимающий ТСР-подключеиия, именуется одним из следующих способов: tcpfhostname:port tcp/hostname:port/cataloguelist При этом hostname определяет имя или десятичный адрес машины, на которой запущен сервер шрифтов; port - десятичный номер порта TCP, на котором сервер шрифтов прослушивает подключения; cataloguelist - список имен каталогов для шрифтов, в качестве разделителя имен применяется знак плюс. При отображении цвета различных текстовых или графических элементов окна указывается либо абстрактное имя цвета, либо его числовое значение. Числовая спецификация идентифицирует цвет или в зависимом от устройства RGB-формате (Red, Green, Blue - красный, зеленый, синий), или в независимой от устройства форме. Строки описания цвета зависят от регистра. Значения абстрактных имен цветов - red, blue и т.д. - хранятся в БД. Поиск начинается с просмотра клиентских баз данных. Если имя не обнаружено, поиск продолжается в БД Х-сервера - в файле <Xi?007Vlib/Xll/rgb.txt, где <XROOT> замещается корневым каталогом инсталлированного дерева XII. RGB-спецификация имеет следующий синтаксис: rgb:<red>/<green>/<blue> Здесь red, green или blue задаются в одном из четырех форматов: h\hh\hhh\hhhh В этой записи h - это одна шестнадцатеричная цифра, при этом h рассматривается как 4 бит, hh - 8 бит, hhh - 12 бит и hhhh - 16 бит. Эти значения передаются непосредственно Х-серверу для корректировки цветовой гаммы. Ниже показаны представления некоторых цветов: rgb: 0/0/0 черный rgb:ffff/0/0 красный rgb:0/ffff/0 зеленый rgb:0/0/ffff синий rgb:ffff/ffff/0 желтый
742 II Команды Спецификация RGB-интенсивности начинается с префикса rgbi: и имеет такой синтаксис: rgbi:<red>/<green>/<blue> где на месте red, green или blue указываются числовые значения с плавающей точкой между 0.0 и 1.0 включительно, представляющие значения линейной интенсивности соответствующего цвета: 1.0 указывает полную интенсивность, 0.5 - половинную интенсивность и т.д. В X существует двухуровневый подход к клавиатуре: keycodes (коды клавиш), которые представляют физические клавиши и указываются со стороны сервера, и keysyms (коды символов, не зависимые от сервера), которые представляют буквы или слова, изображенные на самих клавишах. На сервере хранятся две таблицы для преобразования keycodes в keysyms. Первая таблица — это список модификаторов. Некоторые клавиши, такие, как Shift, Ctrl, Caps Lock известны как модификаторы; они используются совместно с другими клавишами. Например, Ctrl+L генерирует управляющий символ AL, a Shift+I создает прописную букву L. Когда клавиша нажимается или отпускается, сервер создает событие, которое учитывает код указанной клавиши и маску, определяющую, какие клавиши-модификаторы сейчас нажаты. Вторая таблица - keymap table (таблица отображения клавиш). Дело в том, что разнообразные приложения транслируют коды событий клавиш и маски модификаторов в коды символов, используя таблицу keysym. Последняя содержит по одному ряду для кода каждой клавиши и по одному столбцу состояний для каждого модификатора. Эта таблица инициализируется сервером, и, хотя ее содержимое интерпретируется по- разному в зависимости от принятых языков или библиотек, соблюдаются стандартные договоренности в отношении первых четырех кодов символов каждого ряда. Первые четыре элемента символов списка разбиты на две группы символов клавиш. Группа 1 содержит первый и второй коды символов, группа 2 - третий и четвертый. Если первый символ внутри каждой группы является алфавитным, а второй - специальным символом NoSymbol (не символ), тогда принята следующая интерпретация: первый элемент рассматривается как строчная буква, второй элемент - как прописная. Переключение между группами выполняется keysym под названием MODE SWITCH (переключатель режимов) путем прикрепления keysym к некоторой клавише и также подсоединения клавиши к одному из модификаторов MOD1-MOD5. Выбранный модификатор называется модификатором групп. Если модификатор отключен, используется группа 1, в противном случае—группа 2. Внутри группы именно состояние модификатора и определяет, какой keysym (код символа) использовать. Первый keysym используется, когда модификаторы Shift и Lock отключены. Второй keysym используется, когда включены модификаторы Shift, Lock и сам второй keysym является прописным символом алфавита или же когда включен модификатор Lock и он интерпретируется как ShiftLock. Иначе, если включен Lock, который интерпретируется как Caps Lock, состояние модификатора Shift прежде всего берется для выбора keysym; но если keysym строчный символ алфавита, тогда вместо него используется соответствующий прописной kcysjm. Большинство Х-программ использует тс же самые наименования для опций и аргументов командной строки, что приведены ниже. А вес приложения, написанные на основе X Toolkit Intrinsics, автоматически принимают представленные далее опции.
II. Команды 743 Опции -display display Указывает имя используемого сервера X. -geometry geometry Указывает начальный размер и расположение окна, -bg color, -background color Указывает цвет фона окна. -bd color, -bordercolor color Указывает цвет окаймления (рамки) окна. -bw number, -borderwidth number Задает ширину рамки окна в пикселах. -fg color, -foreground color Определяет цвет, используемый для текста или графики в этом окне. -fh font, -font font Указывает шрифт, применяемый для отражения текста. -iconic Указывает, что в начале сеанса окна приложений не будут видны, но будут немедленно развернуты из пиктограмм самим пользователем. -name name Указывает имя, под которым будут отыскиваться ресурсы для приложения. -rv, -reverse Указывает, что программы будут имитировать реверсное (обратное) видео, если это возможно. Не все программы делают это корректно. В основном этот режим используется на монохромных дисплеях. +rv Указывает, что программа не использует реверсное видео. Иногда бывает необходимо запретить режим, заданный по умолчанию, но не всегда корректно работающий. -selection7mieouf Устанавливает период тайм-аута в миллисекундах при взаимодействии двух приложений: время ответа одного приложения на запрос другого. -synchronous Указывает, что запросы к Х-серверу будут посылаться синхронно вместо обычного асинхронного режима. Применяется только для отладки. -title string Указывает название окна. Эта информация иногда используется менеджерами окон. -xnllanguage lang[ter\[.code\ Указывает язык long, территорию ter и набор кодов code, используемых при размешснии ресурсов и других имен файлов. -xrm resourcestring Указывает имя и значение ресурса, что очень удобно при установке ресурсов, не имеющих явных аргументов командной строки.
744 II Команды xbiff уведомляет о поступлени . •: чл гичты. Синтаксис xbiff [-toolkitoption...][option ] Выводит небольшое изображение почтового ящика. Если почта отсутствует, флаг на ящике опушен. В случае поступления почты флаг на ящике поднимается, и может возникнуть звуковой сигнал. По умолчанию нажатие любой кнопки мыши на изображении ящика заставит xbiff опустить флаг (пустой ящик). Опции Программа xbiff принимает стандартные опции командной строки X Toolkit (-toolkitoption) вместе с дополнительными опциями option, перечисленными ниже. -help Направляет список используемых опций в стандартный файл ошибок, -update seconds Устанавливает интервал проверки почтовых поступлений в секундах, по умолчанию - 30 секунд. -file filename Указывает имя проверяемого файла. По умолчанию используется /var/spool/mail/iisername, где username - ваше регистрационное имя. -volume percentage При поступлении новой почты устанавливает громкость звукового сигнала в процентах от полной (могущей быть) громкости. Опции X Toolkit display display Указывает Х-сервер для контакта. geometry geometry Указывает размер и положение окна с изображением почтового ящика. По умолчанию почтовый ящик составляет 48 пикселов в ширину и 48 пикселов по высоте и центрируется в этом окне. -bg color Задает цвет фона окна. -bd color Задает цвет границы (рамки) окна. -bw number Определяет ширину (в пикселах) рамки, окружающей окно. -fg color Задает цвет основного окиа. -xrm resources/ring Указывает используемую строку ресурсов, что необходимо для установки ресурсов, не имеющих отдельных опций командной строки. Пример Здесь показаны образцы изображений почтового ящика с почтой и без нее. ■ |д х
II. Команды 745 ХСИрООЗГО - накапливает и отображает содержимое К CLIPBOARD (буфера обмена). Синтаксис xclipboard [ toolkitoption...J[-w][-nw] Программа xclipboard - клиент системы X, используемый для накопления и отображения строк текста, посылаемых в CLIPBOARD другими клиентами. Содержимое CLIPBOARD обычно сохраняется для последующего использования, фрагменты его текста могут быть в дальнейшем вставлены в разные приложения в том числе и в то, откуда копировались строки исходного текста. Каждый раз при очередном обращении клиентов, выбирающих фрагменты текста, xclipboard пересылает выбранное содержимое в новый буфер и отображает его в текстовом окне. Буфера никогда не освобождаются автоматически, для этого приходится использовать кнопку удаления. Программа xclipboard принимает все стандартные опции командной строки X Toolkit, а также описанные ниже. Опции -w Осуществляет перенос содержимого длинных строк, не помещающихся в окне xclipboard. -nw Запрещает перенос длинных строк на другие строки. Окно программы xclipboard содержит полезные клавиши: Quit после нажатия этой кнопки завершает работу программы Delete при нажатии кнопки удаляет содержимое текущего буфера и отображает следующий Save отображает диалоговую панель FILE SAVE; после нажатия кнопки Accept сохраняет содержимое текущего отображаемого буфера в файле, имя которого задается в текстовом поле Next отображает содержимое следующего буфера списка Prev отображает содержимое предыдущего буфера списка New создает новый буфер XdlTl - менеджер дисплея X Window, управляющий сеан- К. сами на локальных и ■ истанционных системах. Син ис xdm |-config configfile][-nodaemon][-udpPort port] Если вы хотите рсали юпать графический интерфейс для аутентификации поль юва- телей, вам понадобится xdm.
746 II Команды Менеджер xdm управляет Х-дисплеями на локальных узлах или дистанционных серверах. Вид заставки xdm определяется как X-терминалами, так и стандартом XDMCP (X Display Manager Control Protocol - протокол управления Х-дисплеями). Программа xdm предлагает сервис, подобный тому, что предлагают init, getty и login на текстовых терминалах: приглашает ввести имя и пароль, аутентифицирует пользователя и запускает X. Менеджер xdm прекрасно конфигурируется, большинством его возможностей управляют файлы ресурсов и сценарии командных процессоров, или оболочек. Имена этих файлов, которые собственно сами являются ресурсами, считываются из файла xdm-config или из файла, имя которого задается с помощью опции -config. Программа xdm может управлять Х-серверами, работающими на локальной машине и указанными в файле Xservers. Но она также может управлять дистанционными Х-серверами - обычно X-терминалами, используя XDMCP, как определено в этом файле. После переустановки Х-сервера xdm запускает сценарий Xsetup_0. Просмотрите этот сценарий, вполне возможно, что его придется модифицировать, иначе он будет просто бесполезен для вас. Этот сценарий определяет программы, которые будут вызваны при запуске X. Файлы конфигурации xdm располагаются в каталоге /usr/XlIR6/Iib/XIl/xdm. Все опции xdm кроме -config могут быть определены как ресурсы в файле конфигурации. Основные опции -config configfile Указывает файл конфигурации вместо принятого по умолчанию /usr/XllR6/Iib/XH/xdm/xdm-config. -nodaemon Устанавливает ресурс DisplayManager.daemonMode в значение false (ложно), что требуется xdm для закрытия дескрипторов всех файлов, отсоединения от управляющего терминала и первоначального запуска в режиме переднего плана. -udpPort port Задает порт, используемый xdm для прослушивания запросов XDMCP. по умолчанию - 177. Если значение port равно 0, вообще не прослушивает XDMCP-запросы. Пример Чтобы программа xdm могла автоматически запускаться при загрузке, следует заменить строку id:3:initdefault: файла /etc/inittab на следующую: x:5:respawn:/usr/bin/Xll/xdm -nodaemon XGV - отображает суть событий системы X. Синтаксис xev [-display displayname]]-geometry деот] [-bw pixels] [-bs {MotUseful, WhenMapped, Always)][id windovid]|-a 11-nana string] [-rv]
II. Команды 747 Программа xev создает окно и просит Х-сервер направлять в это окно информацию о всех происходящих событиях, как-то: пересылки, изменения размеров, щелчки мышью и т.д. -display displayname Указывает Х-сервер для контакта (см. X). -geometry geom Указывает размер и/или расположение окна (см. X). -bw pixels Указывает ширину (в пикселах) рамки окна, -bs {NotUseful, WhenMapped, Always} Указывает вид резервирования (создание копий) окна По умолчанию NotUseful (без резервирования). id windowid Отслеживает сообщения, приходящие в окно с указанным идентификатором; новое окно не создается. -s Сохраняет также области окна, известные под названием save-unders (перекрываемые или просто закрытые). -name string Назначает имя string создаваемому окну. -rv Устанавливает для окна режим инверсного (обратного) видео. xf86config - создает файл конфигурации XF86Config. Синтаксис xf86config xf86config - это интерактивная программа, генерирующая файл XF86Config, используемый серверами X(Xfree86). Файл XF86Config обычно располагается в каталоге /usr/XllR6/lib/Xll и/или /etc/XIl. Образец такого файла существует в Xfree86: он сконфигурирован для стандартной видеокарты VGA и монитора с разрешением 640x480. Данная программа запросит, куда записывать созданный файл. Перед тем как запускать эту программу, убедитесь, что вы хорошо информированы о возможностях вашей видеокарты. В этом может помочь SuperProbe. Команда xf86conflg использует файл /usr/XllR6/lib/Xll/Cards. XTG - выводит все символы указанного шрифта систе- 1ч мы X в BMie таблицы. Синтаксис xfd [option...] -fn fontname Утилита xfd создает окно, содержащее имя шрифта, указанного аргументом fontname. В окне можно увидеть следующее: ряд командных кнопок, несколько строк
748 II Команды текста, содержащих метрику шрифта, и сетку, в каждой ячейке которой расположен символ. Эти символы показаны в порядке возрастания слева направо и сверху вниз. Как правило, все символы шрифта не могут быть одновременно выведены в окне, поэтому приходится использовать кнопки NextPage (следующая страница) и PrevFage (предшествующая страница). Чтобы выйти из программы, следует щелкнуть мышью на кнопке Quit. Полное имя шрифта выводится в верхней части первой страницы. Списки существующих шрифтов могут быть выведены с помощью xlsfonts. Ниже приведены основные опции программы xfd. Основные опции -center Центрирует каждый символ в соответствующей ячейке таблицы. -start number Указывает индекс number, определяющий местоположение символа в ячейке сетки. Отсчет производится с левого верхнего угла. По умолчанию значение number устанавливается в 0. Примеры С помощью команды xfd -fn lucidasans-italic-18 выведем символы указанного шрифта: И. xfd _ п х -B8H-Lucida-Mediun-I-Nornal-Sans-18-180-75-75-P-105-IS08853-l |Quit liProv Pagf iHuxt Fdfje i character ОхООЬЬ (0,187) (0,0273) Hidth 10; left 1, right 10; ascent 9, descent -1 (font 18, 3) ranee: 0x0020 (0,32) thru OxOOff (0,255) upper left: 0x0000 (0,0) О @ P ' P ° A В a 6 ! 1 A О a q i + A N a n " 2 В R b r € 2 A 6 6 b # 3 с s с s £ 3 A 6 a 6 $ 4 D T d t w A о о 6 % 5 E U e и V И, к 6 а 6 & 6 F V f V 1 1 11 /Е О се о ' 7 С W я W § ■ с X С ( 8 И X h X Е 0 ё 0 ) 9 1 Y l V © 1 Е и ё и * ." 1 z i г о о £ и е а + 'f К I к { « » Е и е а < L \ 1 1 -I •Л 1 и 1 и - = м 1 т 1 > - 'А 1 Y i у > N л п ~ в % / р 1 р / ? о о ~ < 1 /5 >' Я о Команда xfd может сообщить дополнительную информацию о каждом отдельном символе, для этого достаточно щелкнуть мышью на соответствующем символе. Вот как изменилось содержимое предшествующего окна после щелчка мышью ни букве г:
II. Команды 749 1 xfd ' ■—— [Quit range upper 0 @ p p ° A D a д X -BBH-Lucida-nediun-I-Nornal-Sans-18-180-75-75-P-105-IS08859-l i Prev Рлк<; 1 [ Hexl Радо] character 0x0072 (0,114) (0,0162) uidth 9} left 1, right 9j ascent 10, descent 0 (font 16, 3) : 0x0020 (0,32) thru OxOOff (0,255) left: 0x0000 (0,0) 1 1 A Q a Q i + A N a n 2 В R b r € 2 A О a 6 # 3 С S с s £ 3 A О a 0 $ 4 D T dt t « ' A О a 0 % 5 E U e и ¥ И A О a 0 & 6 F V f v ; 11 /E О се 0 ' 7 с W Я w § С X с т- < 8 И X h X Е 0 ё 0 ) 9 / Y i У © 1 г 0 ё й * / z i z о о Е и ё и + К 1 к { « » Е и ё й < 1 \ / / -1 •Л 1 и I и — — м 1 т } - '/2 / Y i V > "лГ л п ® % р к> / 7 О 0 (J / а i р о xfs запускает сервер шрифтов системы X. К Синтакс xfs [option] [-config configuration__file][-port tcp_port]\ xfs - это сервер шрифтов системы X Window, предоставляющий шрифты приложениям. Сервер обычно запускается автоматически при загрузке системы, если эта процедура определена в файле /etc/rc.Iocal. Хотя не исключено, что пользователи запускают для собственных нужд персональный сервер шрифтов Основные опции -config configuration _file Указывает конфигурационный файл, используемый сервером шрифтов. -Is listen-socket Указывает дескриптор файла, который уже установлен для применения в качестве прослушивающего сокета. Эта опция предназначается для использования самим сервером шрифтов в том случае, когда для поддержки дополнительных соединений автоматически запускается собственная копия сервера шрифтов. -daemon Автоматически запускает xfs как фоновый процесс; если jra опция отсутствует, xfs будет запущен как обычный процесс.
750 II Команды -droppriv Если указана эта опция, сервер шрифтов xfs будет выполняться с полями user (владелец) и group (группа), установленными в 1начение xfs. Это делается по соображениям безопасности. С этой опцией можно присвоить параметру tcp_port опции -port значение, равное -1, что вообще отменяет использование порта TCP. -port tcp_porl Указывает номер TCP-порта, на котором сервер шрифтов просслуши- вает ожидаемые соединения. По умолчанию этот номер равен 7100. Сигналы S1GTERM Приказывает серверу шрифтов выполнить корректное завершение. SIGUSR1 Предлагает серверу повторно прочитать конфигурационный файл. SIGUSR2 Предлагает серверу сбросить имеющиеся данные кэша. SIGHUP Этот сигнал предполагает закрытие всех активных соединений и повторное чтение конфигурационного файла. Язык конфигурирования сервера шрифтов - это список ключевых слов и их значений. За каждым ключевым словом обычно следует знак равенства и желаемое значение. Известны следующие ключевые слова: catalogue Список имен маршрутов, содержащих каталоги шрифтов. В настоящее время ключевое слово catalogue можно только установить в значение all, т.е. содержащий все каталоги шрифтов. alternate-servers Список альтернативных серверов для сервера шрифтов. client-limit Количество клиентов, поддерживаемых сервером шрифтов. Это ключевое слово полезно для ограничения нагрузки на каждый отдельный сервер шрифтов. default-point-size Размер точки по умолчанию. Если это ключевое слово не задано, размер точки по умолчанию достигает 120. default-resolutions Разрешения, поддерживаемые по умолчанию для сервера. Эта информация используется при отображении шрифтов и особенно масштабируемых шрифтов. Разрешение - это разделенная запятой пара х и у разрешений в пикселах на дюйм. Несколько пар разрешений также отделяются друг от друга запятой. error-file Имя файла ошибок. В нем регистрируются все предупреждения и ошибки. port Порт, на котором сервер шрифтов прослушивает возможные соединения. use-syslog Для этого ключевого слова предусмотрено булево значение (on или off), если для регистрации ошибок используется syslog. deferglyphs Устанавливает режим задержки предоставления и кэитрования образцов шрифта. При этом ключевое слово может принимать следующие значения:
II. Команды 751 none режим не предоставляется all распространяется на все шрифты 16 распространяется только на 16-битные шрифты Для наименования сервера шрифтов, принимающего TCP-соединения, можно использовать следующую форму: tcplhostname:port tcp/hostname:port/catalogue_list Параметр hostname - это имя либо IP-адрес машины, где запущен сервер шрифтов; port - номер TCP-порта и cataloguelist - список каталогов, содержащих файлы шрифтов. Ниже приведены образцы наименований сервера шрифтов: tcp/fs.x.com:7102 tcp/19.32.0.213:7100/all Пример Рассмотрим образец листинга файла конфигурации сервера шрифтов: client-limit=5 alternate-servers=fountl:7100, fount2:7101 catalogue=/usr/xllR6/lib/Xll/fonts/cyrillic, /usr/xllR6/lib/Xll/fonts/misc, /usr/xllR6/lib/Xll/fonts/75dpi/ def ault-resolutions=75,75,50,50 use-syslog=off С учетом содержимого этого файла к серверу шрифтов может подключиться не более пяти клиентов, при превышении этого предела запускается новый экземпляр сервера. Ключевое слово alternate-servers задает два альтернативных сервера шрифтов. Ключевое слово catalogue содержит три каталога со шрифтами сервера. Разрешения шрифтов по умолчанию составляют 75x75 и 50x50. Для регистрации ошибок sysiog не предусмотрен. xgettext - из заданных входных файлов извлекает строки, которые должны переводиться (в целях интернационализации или локализа ии). интаксис xgettext [option] inputfile... Используется разработчиками локализованного программного обеспечения. Во входном файле inputfile выделяет строки, нуждающиеся в переводе. Они затем используются для создания переносимых файлов сообщений. Если вместо аргумента inputfile стоит дефис, считывает стандартный ввод. Предназначение пакета GNU gcttcxt минимизировать воздействие интернационализации на исходные тексты программ. В приведенной далее диаграмме видны команды, используемые па разных этапах интернационализации.
752 II. Команды я! root©locolhost localdomain:/root _ n x Файл Правка Sellings Справка | Оригинальные исходные —> ро mode —> Marked С Sources — файлы на языке С Библиотека пакета • <— GNUgettext .— make <—+ I Краткое руководство . <—PfiCKAGE.pot <—xgettext <—' .—<— по файлам РО I I I *—. I +—> PO mode —. + > msgmerge > LANG,pox —> ' I I I I -> <; ф OaufiLANCpox J „ . * LHNb.po < нового формата* .— LflNG.gmo <— msgfmt <—' * H I '—> install —> /.„/LflNG/PflCKflGE.mo —. +—> "Hello uorld!" > install —> /.../Ып/PRDGRftM ' The indication 'PO node' appears in two places in this picture, and you may safely read it as merely meaning "hand editing", using any editor of your choice, really. However, for those of you being the lucky users of GNU Ernacs, PO mode has been specifically created for providing a cozy environment for editing or modifying PO files. While —zz-Info: <gettext.info.gz>Overvieu, строк: 190 — SX— Фпйл: gettext.info-l.gz- Опции -a, —extract-all Извлекает все строки. -с, — add-comments [=tag] Замещает в выходном файле блок комментариев меткой (тегом). —debug Проводит более детальную формализацию. -С, —C++ Синоним опции -language=C++. -d, —default-domain=nawe Использует для вывода пате.ро вместо messages.po. -D, —directory=dj>ec<ory Добавляет указанный каталог directory в список маршрутов для поиска файлов. -е, —no-escape He использует в выводе управляющие символы языка С. Принято по умолчанию. -Е, —escape Использует в выводе управляющие символы языка С. -f, —files-from=^//e Получает из/i/e список входных файлов. —force-po Всегда записывает выходной РО-файл, даже если он пустой. -F, —sort-by-file Сортирует вывод согласно расположению файлов.
II. Команды 753 -h, —help Выводит список опций и завершает выполнение программы, -i, —indent Записывает файлы с расширением .ро, используя отступы, -j, —join-existing Соединяет сообщения с существующим файлом. -1, — string-limit=numfcer I Устанавливает максимальную длину строки в значение number. -L, —language=no/ne Распознает указанный язык. Параметр принимает следующие значения: С, C++, РО (переносимый объект). В противном случае используется расширение имени файла. -m, —msgstr-prefix[=s(ring] Использует siring в качестве префикса для элементов строки сообщений. -М, —msgstr-suffix[=s/nng] Использует string в качестве суффикса для элементов строки сообщений. —no-location Не записывает строки в формате #:имя_файла:строка. -n, —add-location Генерирует строки в формате #:имя_файла:строка. Принято по умолчанию. —omit-header He записывает заголовок с идентификатором сообщения. -о, —output=^i/e Записывает вывод в указанный файл. -р, —output-dir=di> Помещает выходные файлы в каталог dir. -s, —sort-output Генерирует сортированный вывод, удаляя дублирующиеся строки. --strict Записывает файл .ро в соответствии с соглашением Uniforum. -V, —version Выводит информацию о версии программы и завершает ее выполнение. -w, — width=number Устанавливает ширину выходной страницы. -х, --exclude-file=^//e Не извлекает элементы из указанного файла. XhOST - управляет доступок - ерверу. К. Синтакси xhost (|+-1 name J Программа xhost добавляет или удаляет имена машин или пользователей из списка, разрешающего подключение к Х-сервсру. В случае машин предлагает довольно примитивную форму управления доступом и обеспечения безопасное™.
754 И Крманды В целях безопасности опции, задающие управление доступом, могут быть указаны лишь со стороны "управляющего узла". Для рабочих станций это та же машина, что и сервер, а для X-терминалов - узел регистрации. On ии -help Печатает подсказку по программе xhost. [+]пате Добавляет указанное имя в список, определяющий возможность подключения к Х-серверу. -пате Удаляет указанное имя из списка, определяющего возможность подключения к Х-серверу. Текущая машина также может быть удалена из списка, последующая попытка подключения не будет выполнена. + Гарантирует доступ каждому, даже если его нет в упомянутом списке. Разрешает доступ лишь тем, кто содержится в упомянутом списке. Если не заданы никакие аргументы командной строки, печатает сообщение, информирующее об отсутствии или наличии управления доступом, за которым идет список тех, кому разрешено подключение. Полное имя пате имеет следующий синтаксис: семейство:имя. В качестве параметра семейство допустимы следующие значения: inet узел Internet dnet узел DECnet nis сетевое имя, для которого обеспечивается безопасность через RPC krb имя в системе обеспечения безопасности по Kerberos local содержит лишь единственное имя — пустую строку. Формат параметра имя отличается от параметра семейство. Если используются средства безопасности RPC, может быть указано сетевое независимое имя (например, nis:linux.uid@domainname) или локальное имя пользователя (например, nis:comp@). В целях совместимости с более ранними версиями команды xhost предполагается, что если имя содержит символ @, то оно относится к семейству nis, в противном случае - к inet. Х1П1Т - ини иализи» ет X Window. К. Синтаксис xinit [[client] option ][ — [server][display] option—] Программа xinit применяется для запуска сервера X Window и первой клиентской программы в системах, где невозможно напрямую запустить X от файла /etc/sysconfig/init или где используется несколько оконных систем. После завершения первой клиентской программы client программа xinit снимает Х-ссрвср и сама завершается. Если в командной строке не указано никакой клиентской программы, xinit ищет в исходном каталоге пользователя файл по имени .xinitrc - сценарий запуска клиентских программ. Если такого файла не существует, по умолчанию запускает следующую команду: xterm -geometry +1+1 -n login -display :0
II. Команды 755 Если в командной строке не указано никакой серверной программы server, программа xinit ищет в исходном каталоге пользователя сценарий (обычно файл .xscrverrc) для запуска соответствующего сервера. Если точное имя сервера не указано, а за двойным дефисом следует двоеточие и цифра, xinit использует ее в качестве номера дисплея display вместо принятого по умолчанию нуля. Все остальные аргументы option передаются серверу. Обычно системные администраторы пишут сценарий запуска xinit или берут стандартный, скажем, startx. Если файл .xserverrc отсутствует, в качестве сервера запускается X. xlsclients - выводит список клиентских приложений X, запущенных на дисплее. Синтаксис xlsclients (-display display] [-а] [-1] [-ш шахсшНеп] xlsclients - это утилита системы X, информирующая о клиентских приложениях, работающих на дисплее: может быть использована для создания сценариев, представляющих из себя снимок (протокол) текущего сеанса пользователя. Опции -display display Указывает Х-сервер для контакта. -а Сообщает о клиентах всех экранов, а не только экрана, взятого по умолчанию. -I Выводит информацию в длинном (подробном) формате. По умолчанию печатаются лишь имя машины и командная строка запуска приложения. В длинном формате дополнительно сообщаются имена окна и пиктограммы, реквизиты класса. -m maxcmdlen Указывает максимальное число символов в распечатываемой команде; по умолчанию - 10000. Пример $ xlsclients Window 0x800001: Machine: localhost.localdomain Command: /usr/bin/gnome-session Instance/Class: gnome-session/Gnome-session Window 0x1800001: Machine: localhost.localdomain Command: panel Instance/Class: panel/Panel Window 0x2000001: Machine: localhost.localdomain Command: gmc Instance/Class: gmc/Gmc Window 0x2400001: Machine: localhost.localdomain Command: gnome-help-browser Instance/Class: gnome-help-browser/Gnome-help-browser
756 И Команды Window 0x2800001: Machine: localhost.localdomain Command: Bession-properties-capplet Instance/Class: seBsion-properties-capplet/Session-properties-capplet Window 0x2c00001: Machine: localhost.localdomain Command: gnomepager applet Instance/Class: gnomepager_applet/Gnomepager_applet Window 0x3000001: Machine: localhost.localdomain Command: gen_util_applet Instance/Class: gen_util_applet/Gen_util_applet Nindow 0x3400001: Machine: localhost.localdomain Command: gnome-terminal Instance/Class: gnome-terminal/Gnome-terminal Window 0x3800001: Machine: localhost.localdomain Command: gnome-terminal Instance/Class: gnome-terminal/Gnome-terminal $ XISTOntS - выводит список шрифтов сервера имиотов. К Синтаксис xlsfonts [-option—П-fn patternl Выводит списки шрифтов, соответствующих заданному шаблону pattern. Для сопоставления с любой последовательностью символов используется звездочка *, а восклицательный знак позволяет сопоставлять единственный символ. Если шаблон отсутствует, подразумевается *. Для корректного трактования оболочкой два упомянутых символа следует заключать в кавычки. Основные опции -display hosf.dpy Указывает X сервер для контакта. -1 Дополняет имя шрифта его некоторыми атрибутами, располагает информацию в одной строке. -11 Добавляет описание свойств шрифта к листингу, создаваемому опцией -1. -111 Добавляет метрики символов к листингу, создаваемому опцией -11. Пример Программа xlsfonts, если ее запустить без параметров, распечатает полный список всех шрифтов, доступных в системе: -adobe-courier-bold-i-normal—0-0-0-0-m-0-iso8859-l -adobe-courier-bold-i-normal—0-0-0-0-m-0-iso8859-2 -adobe-courier-bold-i-normal—0-0-0-0-m-0-iflo8859-3 -adobe-courier-bold-i-normal—0-0-0-0-m-0-iso8859-9 -adobe-courier-bold-o-normal—0-0-75-75-m-0-iso8859-l -adobe-courier-bold-o-normal—10-100-75-75-m-60-iao8859-l
II. Команды 757 -bfih~lucidatypewriter-medium-r-normal-sans-24-240-75-75-m-l40-iBo8859-l -bsh-lucidatypewriter-medium-r-normal-8ans-8-80-75-75-m-50-iso8859-l -schumacher-clean-bold-r-normal—8-80-75-75-c-80-iso646.1991-irv -schumacher-clean-bold-r-normal—8-80-75-75-c-80-iso8859-l 6x10 6x10 6x10 6x10 6x12 decw$cursor decw$cursor decw$session decw§session fixed fixed fixed fixed fixed fixed hanzigbl6fs hanzigbl6fs hanzigbl6st hanzigbl6st hanzigb24st hanzigb24st heb6xl3 heb6xl3 heb8xl3 heb8xl3 kl4 kl4 kanal4 kanal4 kanjil6 kanjil6 kanji24 kanji24 Iinux8xl6 Iinux8xl6 Iinux8x8 Iinux8x8 lucidasans-10 lucidasans-10 lucidasans-12 lucidasans-12 lucidasans-14 lucidasans-14 lucidasans-18 lucidasans-18 lucidasans-24 lucidasans-24 lucidasans-8 lucidaeans-8 lucidasans-bold-10
758 II Команды xmag - увеличивает части X экрана. Синтаксис xmag (-mag magfactor)[-source geom][toolkitoptioD\ Вы можете указать в командной строке части экрана, которые собираетесь увеличивать, в противном случае будет увеличена область с указателем в верхнем левом углу, xmag использует X Toolkit и Athena Widget Set (соответственно вам доступны опции toolkitoptiori). Опц1 -source geom Укалывает размер (по умолчанию 64x64) и/или расположение области экрана, подлежащей увеличению. -mag magfactor Указывает используемое увеличение, где аргумент magfactor - целое число, по умолчанию равное 5. xmh отпр вляет и читает электронную почту. Синтаксис xmh [-path mailpath][-initial folder][-flag][-toolkitoption...] Программа xmh предлагает X Window интерфейс к системе МН (Message Handling - обработки сообщений), позволяющей составить, отправить, получить, ответить на электронное сообщение, перепоручить его, отсортировать и хранить в папках. Опци1 -path mailpath Указывает альтернативный каталог почтовых папок. Параметр mailpath задается как абсолютный маршрут. По умолчанию этот маршрут определяется компонентом Path из профиля системы МН, который, в свою очередь, задается переменной окружения МН и по умолчанию принят как SHOME/.mhjprofile. Если компонент Path не задан, используется $HOME/Mail. -initial folder Указывает альтернативную папку folder, которая будет принимать новую почту и которую в самом начале откроет xmh. По умолчанию таковой является inbox. -flag Уведомляет о приходе новой почты, меняя внешний вид соответствующих кнопок и пиктограмм. По умолчанию меняется внешний вид кнопки Dinbox. Каждой из трех опций соответствует свой ресурс - MailPath, InitialFoldcr, MailWaitingFlag, - который можно указать в файле ресурсов.
II. Команды 759 Программа xmh стартует в окне, разделенном на четыре главные области: Q Шесть кнопок, позволяющих извлекать меню команд. Q Коллекция кнопок по одной на каждый верхний уровень папки; новичку системы МН предоставляются две папки: drafts ("черновики") и inbox (входящая почта). Q Список сообщений, содержащихся в открытой папке; первоначально отображается содержимое inbox. Q Обзор одного из ваших сообщений; первоначально эта область пуста Программа xmh использует библиотеку X Toolkit Intrinsics и набор Athena Widget Set, можно указать любую стандартную опцию -toolkitoption. Щелкнув указателем мыши по ряду кнопок верхней области, можно развернуть опускающиеся меню команд. В командном меню Folder можно открыть, создать и удалить папку. В меню Table of Contents можно добавить в папку новую почту, удалить, переместить, скопировать отмеченные сообщения, перенумеровать, отсортировать и перестроить список сообщений. Меню Message предназначено для манипуляций над выбранным сообщением: можно просмотреть содержимое, перейти к предшествующему или последующему сообщению, составить новое сообщение или ответ на пришедшее и т.д. В меню Sequence можно создавать и манипулировать последовательностями сообщений, в том числе последовательностями сообщений текущей папки. Функции командного меню View аналогичны функциям меню Message с той лишь разницей, что здесь можно манипулировать содержимым любого обозреваемого сообщения, а не только выбранного или текущего. В меню Options содержится лишь один элемент, позволяющий просматривать сообщения в обратном направлении. Пример Здесь приведено окно программы xmh; с помощью команды Incorporate New Mail из меню Table of Contents в почтовую папку включено новое сообщение электронной почты. XITlkmf - создает Makefile из Imakefile. Синтак ic xmkmf [-а][topdir [curdir]] S xmh. inbox l-BX (Folder) (Table of Contents) (Message) (SequenceXVieu) (pPtion!0 inbox (drafts) (p inbox) inbox;all _ 2 07/19 nishael l«tter«Good Hornine » xnh X Consortium R6.3 1 -
760 II. Команды Вызванная без аргументов в каталоге, содержащем Iinakefile, запускает программу intake с аргументами, наиболее пригодными для вашей системы, и создает Makefile. Следует отметить, что intake встраивается в xmkmf при создании системы X. Опции _а Строит Makefile в текущем каталоге, а затем автоматически выполняет для вас следующие команды: make Makefiles make includes make depend Так обычно конфигурируется программное обеспечение, внешнее по отношению к системе X. Аргумент topdir указывает относительный маршрут от текущего каталога к вершине выстроенного дерева. Необязательный аргумент curdir рассматривается как относительный маршрут от вершины построенного дерева к текущему каталогу. Аргумент curdir необходимо приводить, если текущий каталог имеет подкаталоги, или Makefile в состоянии выстроить подкаталоги. Если задан topdir, xmkmf предполагает, что в вашей системе ничего не нужно инсталлировать, и ищет файлы в построенном дереве вместо использования инсталлированных версий. - позволяет менять раскладку клавиатуры и кнопок мыши в X Window. Синтаксис xmodmap [option...] [ filename] Программа xmodmap позволяет редактировать и отображать раскладку клавиатуры, используемую клиентскими приложениями для установления соответствия между нажимаемыми клавишами и генерируемыми ими символами (коды клавиш в коды символов). Когда вы работаете в текстовой виртуальной консоли Linux, то любое ваше нажатие клавиш поддерживается драйвером клавиатуры. В этом случае для изменения соответствия между нажимаемыми клавишами и генерируемыми ими символами применяется loadkeys. После запуска X вы работаете с клавиатурой и мышью. Здесь приходится применять другую утилиту - xmodmap - для изменения раскладки клавиатуры. Аргумент filename определяет файл, содержащий выражения для исполнения утилитой xmodmap. Этот файл обычно хранится в исходном каталоге пользователя под именем .xmodmaprc (или аналогичным). Опции -display display Указывает исполыусмый Х-ссрвср (в формате узст.диеплен). -help Выподит краткое описание опции программы.
II. Команды 761 -grammar Печатает на стандартный файл ошибок вспомогательное сообщение, описывающее грамматические выражения, используемые в файлах. Имеет смысл совместно с опцией -е. -verbose Печатает даже информацию, касающуюся регистрации пользователей. -quiet Запрещает комментировать ход событий. _п Не меняет раскладку клавиатуры, но отображает все так, как будто бы производит требуемое. -е expression Указывает используемое грамматическое выражение для xmodmap. В командной строке может быть задано любое количество выражений, -рт Печатает на стандартный вывод текущую раскладку модификаторов. -рк Печатает на стандартный вывод текущую раскладку клавиатуры (основные клавиши). -рке Указывает, что текущая раскладка клавиатуры может быть распечатана на стандартный вывод в виде выражений, которые могут быть возвращены xmodmap. -рр Указывает, что текущая раскладка указателя мыши может быть распечатана на стандартный вывод. В качестве входного файла использует стандартный ввод. Программа xmodmap считывает из файла список выражений и перед тем, как попытаться исполнить, подвергает их синтаксическому анализу. Грамматические выражения keycode NUMBER=KEYSYMNAME... Определяет список кодов символов KEYSYMNAME. назначаемый указанному коду клавиши NUMBER. keycode any=KEYSYMNAME... Переназначает KEYSYMNAME для запасной клавиши клавиатуры. Список KEYSYMNAME может быть задан в десятичном, шестнадцатеричном или восьмеричном формате. keysym KEYSYMNAME=KEYSYMNAME Транслирует KEYSYMNAME с левой стороны в совпавшие коды клавиш, используемые для представления соответствующего набора выражений кодов клавиш. Список имен кодов символов может быть найден в заголовке файла keys) mdcf.h или в БД под названием XKeysymDB. clear MODIFIERNAME Удаляет все элементы указанного модификатора из таблицы модификаторов. Действуют следующие имена модификаторов: Shift, Lock, Control, Modi, Mod2. Mod3, Mod4 и ModS. add MODlFIERNAME=KEYSYMNAME... Добавляет клавиши, содержащие заданные колы снмполоп KE)S)MNA VIE, к указанной таблице (раскладке) модификаторов MODIFIERNAME.
762 II Команды remove MODIFlERNAME=KEYSYMNAME... Удаляет все клавиши, содержащие заданные коды символов, из указанной таблицы модификаторов MODIFIERNAME. pointer=default Возвращает раскладку указателя мыши в ее значение по умолчанию: кнопка 1 генерирует код 1, кнопка 2 - код 2, кнопка 3 - код 3. pointer=WE/A/fl£7?... Устанавливает новую раскладку указателя мыши. Список всегда начинается с первой физической кнопки. Строки, начинающиеся с восклицательного знака, рассматриваются как комментарии. П име» S xmodmap -e "pointer=3 2 1" S Подобная раскладка указателя мыши удобнее для левши. Для некоторых приложений необходима клавиша Mela, а некоторые клавиатуры не содержат ее, но имеют клавишу Alt. $ xmodmap -e "keysym Alt_L=Heta L Alt_L" S ХОП - запускает Х-п»ст#амму на дистанционной машине. Синтаксис xon remote-host I-access][-debug][-name window-паше}[-nols] [-screen screen-no][-userl user-name][command...] Программа xon запускает указанную команду command на дистанционной машине remote-host, используя rsh, remsh или rcmd. При этом xon передает дистанционной команде переменные окружения DISPLAY, XAUTHORITY и XUSERFILESEARCHPATH. Если никакая команда не указана, xon запускает xterm -Is и дополнительно указывает имя приложения в виде xterm-remote-hosr и название окна -f\remote-host. Команда xon может выполняться лишь в том случае, когда дистанционный узел разрешает регистрацию пользователя без пароля лишь по наличию соответствующего элемента в файле .rhosts. Все приведенные далее опции должны следовать после имени дистанционной машины. Опции -access Запускает xhost на локальной машине, чтобы добавить дистанционный узел в список доступных узлов для Х-сервера. Это не будет срабатывать, если только xhost не предоставит полномочия для модификации указанного списка. -debug Обычно xon отключает дистанционный процесс orstdin, stdout и stdcrr 11ри указании л ой опции позволяет орт шильному узлу получт ь обрлно от дне ганционно! о узла сообщения об ошибках.
П. Команды 763 -name window-name Задает отличающееся имя приложения и наименование окна для команды, заданной по умолчанию (xterm) -n°ls Запрещает передавать опцию -Is дистанционной команде xterm -screen screen-no Меняет номер экрана, передаваемый дистанционной команде через переменную окружения DISPLAY, на screen-no. -user user-name По умолчанию при подключении к дистанционной машине через команды rsh/remsh/rcmd используется то же имя пользователя, что и на локальной машине. Эта опция предоставляет пользователю альтернативное имя user-name. Опция не будет работать, если пользователь не обладает соответствующим счетом на дистанционной машине, что можно указать, добавив элемент в файл дистанционных пользователей .rhosts. Для нормальной работы хоп необходимо, чтобы имена дистанционной машины и пользователя, а также значения переменных окружения не содержали пробелов или других неизображаемых символов. несложная программа рисования. xpaint Синтаксис xpaint [-size IfIDTHx HEIGHT] |-12][-24)[-rcFile file] [-popped][-nowarnJ [-help](filename— ] xpaint - инструмент редактирования цветного изображения со множеством стандартных опций программы рисования. Позволяет одновременно редактировать несколько изображений и поддерживает различные графические форматы: РРМ, ХВМ, TIFF, JPEG и т.д. На экране xpaint можно видеть панель для выбора текущих операций рисования и окна для модификации или создания изображений. Каждое окно имеет доступ к собственной цветовой палитре и набору шаблонов, хотя используемая операция рисования выбирается глобально для всех окон. xpaint работает на самых разных дисплеях, адаптируясь к их типам. Доступна мощная система помощи в режиме on-line. Аргумент filename указывает имя считываемого файла. пции -size W/DTffxHElGHT Указывает принятые по умолчанию ширину и высоту новых изображений. -12 Использует 12 бит цветности PseudoColor. -24 Использует 24 бит цветности TrueColor. -rcFile file Вместо принятого по умолчанию файла конфигурации, определяемого во время компиляции пргяраммм, загружает file.
764 II Команды -popped Разворачивает на старте пустые основы (подобно холсту для рисования) -nowarn Запрещает вывод предупреждений по поводу потери данных из-за разницы отображаемых цветовых режимов и изображений, -help Выводит список доступных опций. На старте xpaint отображает окно инструментов, позволяющее выбрать операции для обработки изображений: окно рисования, редактор шаблонов и т.д. В окне рисования можно выбрать требуемую операцию (различные пиктограммы) и открыть разные меню. Окно рисования содержит канву для рисования, меню для выполнения различных операций над изображениями, первичную и вторичную цветовые палитры с кнопками для их добавления. В любое время, когда создается новая канва (основа), будет считываться файл инициализации .XPaintrc, если он был до того изменен. Пример Вот так выглядит главный экран xpaint: ■ XP«nt2 4 9 - О х | File 11 Line || Font || Help | Eg |Ш \K Ж 1u |n • m Ф. 1\ ■ M I Ш » Л о. c9 L & / ЛЛ • * xpmroot - выводит в основном окне текущего Х-дисплея изображение в формате ХРМ. Синтаксис xpmroot file Считывает указанный файл file в формате ХРМ и отображает его содержимое в основном окне. xrdb утилита БД ресур ■• = »- -ервера. К Синта xrdb [option...|[filename] Команда xrdb обычно применяется в стартовых сценариях X Window. Она позволяет получить или установить содержимое свойства RESOURCEMANAGER главного окна экрана 0 или SCREENRESOURCES главного окна па каком-либо одном или на всех экранах. Особенности, или свойства, определяются набором ресурсов, как то: шрифт, цвет и т.д. При этом особенность RESOURCE MANAGER распространяется на все экраны Х-сервера, a SCREENRESOURCES -только на конкретный экран. Опции -help Выводит описание существующих опции.
II. Команды 765 -all -global -display display Указывав имя Х-сервера. Она также определяет экран для опции -screen и экран, из которого создаются символы препроцессора, для опции -global. Указывает, что все выполняемые операции будут базироваться как на основе ресурсов RESOURCEMANAGER, так и на основе SCREENRESOURCES. Например, при использовании совместно с опцией -query будут выводиться ресурсы всех свойств, или особенностей. Устанавливает, что операция будет выполняться только на основе эк- ранно-независимых ресурсов RESOURCE_MANAGER. -screen Устанавливает, что для экрана, взятого по умолчанию, операция будет выполняться только на основе ресурсов SCREENRESOURCES. -screens Устанавливает, что для каждого экрана дисплея операция будет выполняться только на основе ресурсов SCREEN_RESOURCES. -п Указывает, что любые изменения указанных свойств или корректировки файла ресурсов будут отображаться на стандартном выводе, но фактически не выполняться. -quiet Запрещает выводить предупреждения о дублирующихся элементах. -cpp filename Указывает маршрут к программе препроцессора С. Хотя xrdb обычно использует ерр, но может применяться любая программа, действующая как фильтр и принимающая опции -D, -I, -V. -поерр Не использует срр. -symbols Выводит символы (идентификаторы), определенные для препроцессора, на стандартный вывод. -query Выводит текущее содержимое указанных свойств на стандартный вывод. -load Загружает с входного файла новые значения указанных свойств, удаляя при этом старые. -override Вместо замещения добавляет содержимое входного файла. Новые элементы могут перекрывать старые. -merge Содержимое входного файла может сливаться (но не замещать) с текущим содержимым указанных свойств. -remove Удаляет с сервера указанные особенности, или свойства, -retain Запрещает выполнять переустановку, если xrdb является первым клиентом. При обычных условиях первыми клиентами являются xdm и xinit. -edit filename Редактирует содержимое указанных свойств заданного флй<\а/Испате. -backup string Указывает суффикс string, добавляемый к имени файла, используемого с опцией -edit при создании резервного файла.
' W _____ II. Команды -Y3name[=value] Передает препроцессору определяемые символы (идентификаторы) пате и их значения value. -Una/не Удаляет любое определение символа (идентификатора) пате. -Idir Указывает каталог dir, применяемый для поиска файлов, указываемых директивой #include; эта опция передаётся препроцессору. Поимер % xrdb -merge $BOME/.Xresources % Если в файле .Xrcsources вашего исходного каталога хранятся некие ресурсы, то они могут быть добавлены к ресурсам сервера с помощью примерно такой команды: % xrdb -load -Xdefaults % Опция -load позволяет записать все ресурсы главного окна дисплея RESOURCE_MANAGER в файл .Xdefaults. Если в этом файле ранее содержались ресурсы, отсутствующие в RESOURCE_MANAGER, то они сохраняются. xrefresh - обновляет весь эк«ан или его часть. Синтаксис xrefresh [option...) Программа xrefresh перерисовывает весь экран или его часть, что очень удобно, если системные сообщения смешиваются с содержимым вашего экрана. Оп ии -white Использует белый фон; "заливает" экран белым цветом, а затем перерисовывает его. -black Используег черный фон; "заливает" черным экран, а затем перерисовывает его. -solid color "Заливает" экран указанным цветом, а затем перерисовывает его. По умолчанию выполняет заливку зеленым цветом. -root Использует для заливки цвет фона главного окна. -попе Просто перерисовывает все окна. Эта опция действует по умолчанию. -geometry WxH+X+Y Указывает часть экрана (по геометрическим параметрам см. Y), которая должна быть перерисована. -display display Указывает серпер и -жран для перерисовки (см. X).
II. Команды A.S©rV©r сервер дисплея системы X Window. Синтаксис X [option...] X - общее имя для сервера дисплея системы X Window. Х-сервер обычно запускается утилитой xdm. В тех инсталляциях, где предполагается запуск более, чем одной оконной системы, обычно вместо xdm используют утилиту xinit, хотя обычно пользователи не работают напрямую с последней. Если Х-сервер запускается на рабочей станции, чьей консолью является единственный дисплей, вам не придется регистрироваться на консоли. Ниже представлены опции, которые принимает любой из типов Х-серверов (см. приложение IV). Основные оп ии :displaynumber Запускает Х-сервер на указанном номере дисплея display number, no умолчанию - на нулевом. Но если несколько Х-серверов запускаются на одной машине, каждый должен иметь уникальный номер дисплея (см. X). -a number Устанавливает ускорение указателя (коэффициент, устанавливающий перемещение указателя). -ас Отменяет обычный механизм управления доступом, принятый на узле. Разрешает доступ любому узлу и позволяет с любого узла модифицировать список управления доступом. Опция используется лишь в экстремальных ситуациях. -audit level Устанавливает уровень аудита и направляет аудиторскую информацию в стандартный файл ошибок. По умолчанию принят уровень 1, при котором лишь фиксируются отвергнутые подключения. Уровень 2 позволяет получить дополнительную информацию о всех успешных подключениях и отключениях. Уровень 0 вообще отключает аудит. -auth authorization-file Указывает файл, содержащий записи авторизации, которые используются для аутентификации доступа. -bs Отменяет поддержку обратного сохранения содержимого на всех экранах. -с Отключает звуковой сигнал при нажатии клавиш. с volume Устанавливает интенсивность звукового сигнала при нажатии и отпуске клавиш, допустимое значение в процентах параметра volume лежит в диапазоне 0-100.
768 II. Команды -со filename Устанавливает имя БД RGB-цветов. По умолчанию - файл <%R007>/Iib/Xll/rgb.txt, где <XROOT> - корневой каталог дерева инсталлированной системы X11. -core Передает указание серверу генерировать дамп памяти в случае фатальных ошибок. -dpi resolution Устанавливает разрешение экрана в точках на дюйм. Опция используется в случае, когда сервер не в состоянии определить размер экрана по техническим характеристикам устройства. -deferglyphs whichfonts Указывает типы шрифтов, которые сервер может попытаться использовать. Допустимы следующие значения параметра whichfonts: all все шрифты попе никакие 16 только 16-битные шрифты -f volume Устанавливает громкость звукового сигнала, допустимое значение в процентах лежит в диапазоне 0-100. -fc cursorFont Устанавливает шрифт курсора по умолчанию. -fh font Устанавливает шрифт по умолчанию. -fp fontPath Устанавливает для Х-сервера маршрут поиска шрифтов в виде разделенного запятыми списка каталогов. -help Распечатывает подсказку. -I Приказывает игнорировать все оставшиеся аргументы командной строки. -kb Отключает расширение клавиатуры XKEYBOARD, если таковое имеется. -nolisten trans-type Отключает тип транспортного протокола. Так подключения по протоколу TCP/IP могут быть отменены с помощью -nolisten tcp. -nolock Запрещает использовать lock-файл Х-сервера. -р minutes Устанавливает цикл времени в минутах для шаблона. -рп Разрешает серверу продолжать работу, если аварийно завершились все хорошо известные сокеты (точки подключения для клиентов) за исключением хотя бы одного. -г Отключает автоповтор при нажатии клавиш. г Включает автоповтор при нажатии клавиш. -s minutes Устанавливает период тайм-аута в минутах для хранителя экрана. -su Отменяет на всех экранах поддержку сохранения. -t number Устанавливает ускорение указателя мыши в пикселах. -to seconds Устанавливает время тайм-аута в секундах, принятое по умолчанию при подключении.
II. Команды 769 v Отключае г установку хранителя жрана. "v Включает установку хранителя экрана. Существуют опции, ограничивающие сервер в размерах данных, стека или в количестве одновременно открытых файлов, но они пригодны не для всех типов серверов так же, как и опции расширений XKEYBOARD. XS©1 - выполняет настройку параметров системы К X Window. Синтаксис xset [-display display] [-b] [b on/off][b [volume [pitch [duration]}] [[-]bc][-c][c on/off][c [ volume]][[-+]fp [-+=]path[,path[,...]]] [fp default][£p rehash][[-]led [integer]][led on/off] [m [ouse][accel mult [/accel div][threshold]]][m [ouse] default] [p pixel color][[-]i [*eycode]][r on/off] [r rate delay [rate]] [s [length [period]]][s blank/noblank][s expose/noexpose][s on/off] [s default][s activate][s reset][q] Опции -display display Указывает используемый сервер (см. X). b Устанавливает громкость (volume), тон (pitch) и продолжительность (duration) звукового сигнала, т.е. к этой опции могут прилагаться три числовых параметра, флаг on/off или ей может предшествовать дефис (знак минус). Если никаких параметров не задано, используются флаг on и системные установки по умолчанию. Предшествующий дефис, или off, отключает звуковой сигнал. Если определен только один числовой параметр, то в это значение устанавливается громкость звука: в виде процента от его максимального значения. Второй параметр указывает тон звука в герцах и третий - продолжительность сигнала в миллисекундах. -be Включает режим совместимости ради старых ошибок (еще до выхода X Release4), что сегодня уже не имеет практического значения. с Управляет звуковым сигналом при нажатии на клавиши. За этой опцией может следовать необязательное числовое значение volume, флаг on/off, ей может предшествовать дефис. Флаг off, или дефис, отключает звуковой сигнал. Числовое значение определяет громкость в виде процента от максимально возможного значения и колеблется в интервале от 0 до 100. А уже Х-ссрвср окончательно установит это значение в ближайшее, допускаемое техническими средствами. fp=path,... Устанавливает маршрут поиска шрифтов. Эти установки нигерпретнру- ются сервером, а не клиентом. Обычно задаются имена каталогов ичи имена серверов шрифтов. fp default Персуст анавливает маршрут поиска шрифтов в «шинное no \ молчанию значение.
770 II. Команды fp rehash Переустанавливает маршрут поиска шрифтов в его текущее значение, предлагая серверу еще раз прочесть БД шрифтов в текущий каталог шрифтов. Это обычно делается при добавлении новых шрифтов в каталог шрифтов и выполняется после запуска mkfontdir, которая пересоздает БД шрифтов. -fp, fp- Удаляют элементы из текущего маршрута шрифтов, которые должны следовать за опцией в виде разделяемого запятыми списка элементов. +fp Добавляет элементы в начало текущего маршрута шрифтов, которые должны следовать за опцией в виде разделяемого запятыми списка элементов. fp+ Добавляет элементы в конец текущего маршрута шрифтов, которые должны следовать за опцией в виде разделяемого запятыми списка элементов. led Управляет LEDs (светодиодами) клавиатуры, при этом можно включать или отключать один или все светодиоды. Эта опция принимает необязательное целое число, флаг on/off или предшествующий дефис. Если указан дефис, или задан флаг off, все светодиоды будут отключены. Если не указаны никакие параметры или задан флаг on, все светодиоды будут включены. Если указано целое число между 1 и 32, тогда соответствующий светодиод будет включен или отключен в зависимости от предшествующего дефиса (знака минуса). m Управляет параметрами мыши, к таковым относятся ускорение и порог, определяющий расстояние, на которое перемещается указатель мыши за короткое время. Параметр ускорения ассе! — это целое число (mult) или обычная дробь (div) - задает, во сколько раз быстрее или медленнее должен двигаться указатель мыши в режиме ускорения. Чтобы включился режим ускорения, за короткое время указатель мыши должен быть перемещен на некоторое расстояние threshold, его мы задаем в пикселах. Один или оба параметра опции m могут быть опущены, но, если хотя бы один из них задан, он будет интерпретироваться как ускорение. Если ни один из параметров не указан или используется параметр default. будут установлены значения, принятые в системе по умолчанию. р Управляет номерами цветов в текущей палитре. Параметрами {pixel и color) этой опции являются десятичный номер элемента в цветовой палитре и спецификация цвета. г Регулирует автоповтор символов в случае удержания какой-либо клавиши нажатой. Если никакие параметры не заданы или задан флаг on, устанавливает автоповтор символов. Если указан дефис, или флаг off, отключает автоповтор. В качестве параметра можно указать определенную клавишу keycode, для которой можно отменить или установить автоповтор. Если сервер поддерживает расширение Xfrcc86-Misc, тогда принимается параметр rate (скорость), за которым может следовать одно или два числовых значения. Первое из значений указывает задержку delay перед автоповтором, второе - скорость повтора.
II. Команды 771 s Устанавливает параметры храни геля экрана. Эта опция принимает ие более двух числовых параметров из следующих флагов: blank/noblank флаг blank устанавливает "мигающий" экран, если монитор может поддерживать такой режим; флаг noblank позволяет закрыть экран неким графическим шаблоном (узором) expose/noexpose в случае флага expose содержимое экрана просто будет "брошено на произвол судьбы"; в режиме noexpose хранитель экрана недоступен on/off включает/отключает службы хранителя экрана activate/reset флаг activate активизирует хранитель экрана, даже если он был отключен, флаг reset убирает хранитель экрана, даже если он был активен Опция s принимает еще два параметра: length, определяющий, как долго сервер может быть неактивным до включения хранителя экрана, и period, устанавливающий период для изменения фонового шаблона. Оба параметра задаются в секундах. Если указан только один параметр, он интерпретируется как length. q Информирует о текущих установках. Все установки могут быть возвращены в их значения по умолчанию, когда пользователь выходит из системы. Примеры $ xset q Keyboard Control: auto repeat: on auto repeat delay: auto repeating keys: 50 key click percent: 500 repeat rate: OOffffffdffffbbf fa9ffffff£dffdff 7f00000000000000 0000000000000000 bell pitch: 400 LED mask: 00000000 hell duration: 100 threshold: 4 allow exposures: 600 BlackPixel: 0 yes HhitePixel: 16777215 bell percent: Pointer Control: acceleration: 2/1 Screen Saver: prefer hlanking: yes timeout: 600 cycle: Colors: default colormap: 0x23 Font Path: unix/:-l Bug Hode: compatibility mode is disabled DPMS (Energy Star): Standby: 1200 Suspend: 1800 Off: 2400 DPMS is Disabled $ Следующая команда не разрешает "гасить" экран неактивного пользователя. $ xset s off $
772 II Комаеды XSGTrOOX - меняет настройки главного окна X. 1\ Синтаксис xsetroot [-help][-def][-display display][-cursor cursorfile maskfile] [-cursor_name cursorname][-bitmap filename)[-mod x y][-gray][-greyJ [-fg color][-bg coJorJ[-rv][-solid color][-name string] Позволяет настроить вид окна на рабочем столе, установить цвет фона, а также поместить на рабочем столе приглянувшийся рисунок. Без каких-либо параметров восстанавливает значение установок по умолчанию. Опции -help Печатает краткий список опций и завершает программу. -def Переустанавливает все неуказанные атрибуты и их значения по умолчанию. -cursor cursorfile maskfile Позволяет заменить указатель курсора, когда он находится вне любого окна. Файлы курсора cursorfile и маски maskfile - это крохотные картинки (растровые файлы), которые могут быть созданы с помощью программы bitmap. -cursor_name cursorname Позволяет заменить указатель на один из стандартных cursorname. -bitmap filename Использует растровый рисунок из указанного файла для размещения на рабочем столе. Для создания собственных рисунков можно применить программу bitmap. Полный фон рабочего стола будет заполняться повторяющимися "плитками" вашего рисунка. -gray, -grey Создает фон серого цвета. -fg color Использует указанный цвет в качестве основного. -bg color Использует указанный цвет в качестве дополнительного. -rv Меняет местами основной и дополнительный цвета. Обычно основной цвет (переднего плана) - черный, а дополнительный (фоновый) - белый. -solid color Выполняет "заливку" фона основного окна указанным цветом. -name string Устанавливает имя основного окна в значение string. -mod х у Позволяет получить сетчатый фон вашего экрана, х и у - целые, меняющиеся от 1 до 16. -display display Указынает сервер для подключений (см. X). Лишь одна из следующих опций может быть укашна за раз: -solid. -Rray. -цгеу, -bitmap, -mod.
II. Команды TJ'X При ер. $ xsetroot -solid gray $ Так будет установлен серый фон рабочего стола. Можно также указать шестнадца- теричное значение цвета (см. приложение III) в кавычках. Попробуйте установить такой нежный цвет фона: $ xsetroot -solid "tccbObOt" $ А как вам понравятся такие ромбики? $ xsetroot -bitmap /usr/include/Xll/bitmaps/xlogo64 -fg -IcOcOcOf" $ Пользователям Windows 95/98 привычен курсор в виде стрелки, указывающей в верхний левый угол, что можно достигнуть с помощью такой команды: $ xsetroot -cursor_name left ptr $ Такой указатель работает за пределами окна, где вы набирали такую команду. Ниже приведены еще два известных наименования: X_cursor форма курсора в виде буквы X (по умолчанию) arrow стрелка, указывающая в верхний правый угол В GNOME и KDE также можно выполнить подобные установки в control centers (в центрах управления). xterm - эмулирует терминал в системе X. Синтаксис xterm [toolkitoption ][option... ] Программа xterm воплощает терминалы VT102/VT220 фирмы DEC и терминалы, совместимые с типом Tektronix 4014, для тех программ, которые не могут напрямую использовать оконную систему. Каждый из терминалов VT102 и Tektronix 4014 имеет свое собственное окно, так что пользователь может одновременно редактировать текст в одном из окон и просматривать изображения в другом. Но с другой стороны лишь одно из окон может быть активным в каждый момент времени, т.е. получать набираемые на клавиатуре символы и осуществлять вывод на терминал. Команда xterm принимает как все стандартные опции X Toolkit, так и представленные ниже. н в опции -version Печатае! информацию о версии программы, -help Распечатывает подробное сообщение, описывающее опции. -132 Устанавливает управляющую последовательность, псрсклмчаю|ц>ю ""~"-"@ между режимами 80 и 132 столбца для VT102.
774 II Команды -ah Всегда выделяет текстовый курсор +ah Осуществляет выделение текстового курсора, основываясь на фокусе. -ai Отключает поддержку активных пиктограмм, если эта особенность была заложена при компиляции xterm. +ai Включает поддержку активных пиктограмм, если эта особенность была заложена при компиляции xterm. -aw Разрешает режим авто-wraparound - при этом курсор после крайнего правого положения автоматически переходит на начало следующей строки выводимого текста. +aw Запрещает режим авто-wraparound. -b number Указывает размер внутренней рамки (расстояние между внешней границей символов и границей окна) в пикселах; по умолчанию - 2. -bde Отменяет отображение в цвете символов с атрибутом полужирный. +bdc Устанавливает отображение в цвете символов с атрибутом полужирный. -cb Устанавливает ресурс cutToBeginningOfLine для VT100 в значение FALSE (ложно). +cb Устанавливает ресурс cutToBeginningOfLine для VT100 в значение TRUE (истинно). -cm Отменяет распознавание управляющих ANSI-последовательностей изменения цвета. -сп Указывает, что символы newline не будут усечены при выборе строк. +сп Указывает, что символы newline будут отброшены при выборе строк, -сг color Указывает цвет, предназначенный для текстового курсора, -de Запрещает управляющую последовательность, меняющую динамические цвета: фоновый и основной цвета для VT100. +d с Устанавливает управляющую последовательность для изменения динамических цветов. -е program [args...] Указывает программу program и ее аргументы atgs для запуска в окне xterm. Эта опция должна стоять последней в командной строке. -fb font Устанавливает шрифт, используемый при отображении полужирного текста. Этот шрифт должен быть той же самой высоты и ширины, что и обычный шрифт. По умолчанию используется обычный шрифт. -fi Устанавливает шрифт для активных пиктограмм, если только такая возможность закладывалась при компиляции xterm. -j Прокручивает за раз несколько строк. Обычно выполняет построчну ю прокрутку. +j Запрещает прокручивать за один pat но несколько строк. -leftbar Помещает полосу прокрутки по левую сторону экрана VT100, что принято по умолчанию.
II. Команды 775 "'s Устанавливает оболочку, запущенную в окне xttrm, в качестве оболочки регистрации. +' s Не устанавливает оболочку, запущенную в окне xterm, в качестве оболочки регистрации. "mD Вызывает звуковой сигнал, если пользователь, набирая текст, приблизился к правому краю строки. -mc milliseconds Указывает максимальный промежуток времени между щелчками указателя мыши. -ms color Указывает цвет применяемый для указателя курсора. По умолчанию используется основной цвет. -nb number Указывает количество критичных символов от правого края строки, вызывающее звуковой сигнал, если это определено соответствующей опцией (-mb) командной строки. По умолчанию принято 10. -nul Включает отображение подчеркивания в тексте. +nul Отключает отображение подчеркивания в тексте. -рс Включает использование PC-стиля полужирных цветов. +рс Отключает использование PC-стиля полужирных цветов. -rightbar Помещает полосу прокрутки по правую сторону экрана. -rw Позволяет возвращать курсор от крайнего левого столбца одной строки к крайнему правому предшествующей строки. +rw Запрещает возможность, задаваемую опцией -rw. - s Разрешает асинхронную прокрутку содержимого экрана. +s Разрешает синхронную прокрутку содержимого экрана. -sb Сохраняет несколько уже прокрученных строк, выводит их наверху нового экрана, а также отображает полосу прокрутки. +sb He отображает полосу прокрутки. +sf Указывает, что для функциональных клавиш будут генерироваться стандартные управляющие коды. -si number Определяет число сохраняемых строк, прокрученных от вершины экрана; по умолчанию - 64. -t Запускает xterm в режиме терминала Tektronix. Переключение между двумя окнами осуществляется с помощью меню Options. +t Запускает xterm в режиме терминала VT102. -tm string Указывает набор терминальных установок ключевых слов вместе со следующими за ними управляющими символами, связанными с этими словами. Упомянутые слова аналогичны функциям программы stty: intr, quit, erase, kill, cof, col, swtch. start, stop, brk, susp. dsusp, rprnt. flush, wcras, Inext. Управляющие символы могут быть указаны в следующем виде: лс или Ли, а комбинация л? используется для указания удаления.
776 II Команды -tn name Указывает тип терминала для установки в переменной окружения TERM, этот тип должен быть описан в БД termcap. -ulc Запрещает отображать символы с подчеркиванием в цвете. +uls Отображает в цвете символы с подчеркиванием, -ut He регистрирует xterm в системном журнале /etc/utmp. +ut Регистрирует xterm в системном журнале /etc/utmp. -vb Отдает предпочтение визуальному звонку вместо звукового. +vb He использует визуальный звонок. Приме• Конечно, стандартный вариант xterm, как правило, имеется среди пиктограмм главной панели. Щелкни и получи. Но иногда требуется внести некоторые изменения. Команда, приведенная ниже, поменяет цвет указателя на красный, полоса прокрутки переместится влево. $ xterm -cr red ш sofia@localhost.localdomain: /home/sofia - ,П X [sofiaElocalhost Sofia]* XWQ - создает дамп изображения и сохраняет его в файле. Синтаксис xwd [-debug][-help][-nobdrs][-out file][-xy][-frame](-add value] [-root|-id id|-name паше][-icmap][-screen][-display display][-silent] xwd — утилита дампирования системы X Window, позволяющая пользователям хранить изображения окон в специально отформатированных файлах. Затем этот файл может быть считан другими утилитами X для просмотра, редактирования или печати. Окно для дампирования выбирается путем щелчка указателя мыши на его фоне. В начале дампирования один раз выполняется звуковой сигнал, в конце — дважды. Опции [-display display] Позволяет указывать сервер для подключения (см. X). -help Распечатывает справку по команде и ее опциям. -nobdrs He включает пикселы рамки окна в захваченное изображение. -out file Выводит изображение в указанный файл, по умолчанию - на стандартный вывод. -ху Вместо используемого по умолчанию Z-формата применяет X'S -формат для записи цветных и юбраженим.
II. Команды 777 -add value -frame Добавляет указанное значение к каждому пикселу "захваченного" изображения. Помимо окна включает в "захваченное" изображение рамку менеджера -root -id id -name name -icmap -silent "Захватывает" изображение в основном окне. Выбирает для дампирования окно с указанным идентификатором ресурсов. В этом случае пользователю не требуется определять окно с помощью мыши. Выбирает для дампирования окно с указанным свойством (WMNAME). В этом случае пользователю не требуется определять окно с помощью мыши. Обычно для изображения цветов выбранного окна используются RGB- значения (Red - красный, Green - зеленый, Blue - синий, т.е. основные цвета спектра). При задании рассматриваемой опции вместо этого использует первое инсталлированное отображение цветов экрана (первая цветовая палитра). Включает при захвате изображения части других окон, перекрывающие указанное. Запрещает выдачу звуковых сигналов. xwdtopnm • конвертирует дамп окна Х11 или Х10 в переносимый фо#мат. xwdtopnm [xwdfile] Считывает файл xwdfile с дампом окна XII или Х10, создает в качестве выходного переносимый файл. Тип выходного файла зависит от входного: если на входе был файл с черно-белым изображением, создается файл в формате РВМ, если входной файл содержал изображение в градациях серого, создается файл в формате PGM, в противном случае - файл в формате РРМ. Программа сообщает о типе создаваемого файла. XWininfO - вывод информации об окнах системы X. Синтаксис xwininfo [-helpH-id id] [-root] [-name паше] [-int] [-children] [-tree] [-stats] [-bits] [-events] [-size] [-wm] [-shape] [-frame] [-all] [-english] [-metric](-display display] Выводимая информация определяется опциями командной строки, если никакие опции не указаны, подразумевается опция -stats.
778 II. Команды Пользователь может выбрать интересующее его окно, щелкнув переключателем мыши на соответствующем окне, а также может определить окно в командной строке с помощью опции -id либо -name. Опции -help -id id -name name -root -int Печатает подсказку по синтаксису команды. Задает идентификатор интересующего окна. Задает имя интересующего окна. Указывает основное окно системы X. Отображает все идентификаторы окон X как целые числа. По умолчанию отображаются шестнадцатеричные значения. -children Отображает идентификаторы и имена основного, всех родительских и дочерних окон, -tree Действует аналогично опции -children, но отображает окна рекурсивно. -stats Отображает различные атрибуты, касающиеся расположения и появления выбранных окон: местонахождение, ширина, высота, ширина рамки, класс, палитра и т.д. -bits Выводит различные атрибуты, битовые флаги, касающиеся хранения выбранных окон, наличия перекрывающихся областей. -events Отображает маски событий выбранных окон. -size Выводит полную информацию о размерах выбранных окон. -wm Отображает информацию по выбранным менеджерам окон: принимает или нет соответствующее приложение входную информацию, сведения о пиктограммах окон, их начальное состояние. -shape Выводит информацию о рамке и форме окна. -frame Информирует об окне, управляемом менеджером окон, когда окна выбираются вручную. -metric Выводит высоту, ширину, координаты х и у окон в миллиметрах, а также в пикселах. -all Выводит всю доступную информацию. -display display Указывает сервер для подключения (см. X). -english Выводит высоту, ширину, координаты х и у окон в дюймах, а также в пикселах. Пример $ xwininfo xwininfo: Please select the window about which you would like information by clicking the mouse in that window. xwininfo: Window id: 0x1800068 "panel" Absolute upper-left X: 0 Absolute upper-left Y: 428
II. Команды Relative upper-left X: О Relative upper-left Y: 0 Width: 640 Height: 52 Depth: 24 Visual Class: TrueColor Border width: 0 Class: Inputoutput Colormap: 0x23 (installed) Bit Gravity State: ForgetGravity Window Gravity State: NorthWestGravity Backing store State: NotUseful Save Under State: no Map State: IsViewable Override Redirect State: no Corners: +0+428 -0+428 -0-0 +0-0 -geometry 640x52+0-0 xwud ■ выводит изображение, ранее сохраненное командой xwd. Синтаксис xwud [-in file] [-noclickJ [-geometry geom] [-display display] [-new] [-std maptype] [-raw] [-vis vis-type-or-id] [-scale] [-help] [-rv] [-plane лшиЬег] [-f g color][-bg color] xwud - утилита X Window, позволяющая отображать в окне изображение, ранее сохраненное в специально отформатированном файле. Опции -bg color Указывает отображаемый цвет для нулевых битов монохромного растрового изображения. -display display Позволяет указывать сервер для подключения (см. X). -fg color Указывает отображаемый цвет для битов, установленных в 1, монохромного растрового изображения -geometry geom Позволяет указать размер и положение отображаемого окна: его размер по умолчанию равен фактическому размеру изображения. -help Печатает краткое описание допустимых опций. -in file Указывает файл, откуда считывается изображение. Если в командной строке никакой файл не задан, считывает стандартный ввод, -new Для вывода изображений создает новую цветовую палитру. -noclick Обычно, если не указана эта опция, щелчок переключателем мыши (любая кнопка) завершает приложение. В случае задания этой опции такого не происходит. Завершить приложение можно нажатием клавиши q, Q или Ctrl+C.
780 II. Команды -plane number Позволяет выбрать по номеру единственный бит плоскости изображения. Плоскости (планы) изображения нумеруются с нуля, начиная с наименее существенного бита. Эта опция передает программе хрг плоскость (план) изображения для печати. -raw Выводит изображение с существующими в настоящий момент значениями цветов. -rv Осуществляет инверсный вывод изображения, т.е. меняет местами нулевые и единичные значения пиксела. -scale Позволяет менять размер окна, масштабируя изображение под размер окна. -std maptype Используетдля вывода стандартную цветовую палитру указанного типа: best наилучшая default по умолчанию gray в градациях серого -vis vis-type-or-id Позволяет указать класс выводимого изображения; по умолчанию - best. xxgdb - графический интерфейс пользователя к отладчику gdb. Си таксис xxgdb [toolkitoption ] [xxgdboption— ] [gdboption...] [objfile [corefile]] objfile — это объектный файл, создаваемый компилятором с опцией -g, со специальной таблицей идентификаторов для gdb. Если в текущем каталоге существует файл core или в командной строке указан аргумент corefile, отладчик xxgdb использует его для анализа состояния программы в случае выдачи дампа памяти. Программа xxgdb принимает все стандартные опции командной строки для X Toolkit (toolkitoption...), все допустимые опции gdb (gdboption...) (см. gdb), а также приведенные ниже дополнительные опции xxgdb. ■ции -dbname Указывает имя вызываемого отладчика вместо принятого по умолчанию gdb. -db_prompt Устанавливает приглашение отладчика. По умолчанию приглашение отладчика представляет из себя его имя, заключенное в круглые скобки, за которыми следует пробел. -i Указывает имя командного файла инициализации. По умолчанию - .gdbinit. -пх Не исполняет файл .gdbinit или файл, определенный с помощью опции -i.
II. Команды 781 -bigicon Использует пиктограмму размером 64x64 вместо заданной по умолчанию размером 48x48. В нижней части экрана, появившегося после запуска xxgdb, находятся командные кнопки. Перечень о н run cont next Начинает исполнение программы. Продолжает вашу программу после останова. Исполняет одну строку исходного файла, пропуская любые вызовы функций. s tep Исполняет одну строку исходного файла, реализуя любые вызовы функций. finish Продолжает выполнение до точки возврата выбранной процедуры. Если никакая процедура не выбрана, использует текущую процедуру. break Останавливает программу в контрольной точке, которая может быть указана в строке или в выбранной функции. Чтобы установить в программе контрольную точку, следует поместить знак Л в начало исходной строки или имени функции и шелкнуть указателем мыши на кнопке break. tbreak Устанавливает одноразовую контрольную точку. Действие tbreak подобно действию кнопки break за исключением того, что после первого использования контрольная точка автоматически отменяется. delete Отменяет контрольную точку. show brkpts Отображает текущие контрольные точки. stack Отображает трассу стека вызываемых функций. up Поднимается на один уровень в стеке вызываемых функций. down Опускается на один уровень в стеке вызываемых функций. print Печатает значение выбранного выражения, если щелкнуть правой кнопкой мыши на кнопке print или print*. print * Печатает значение объекта, указанного выбранным выражением. Если искомое значение в свою очередь является указателем или структурой, содержащей указатели, то значение объекта, на который указывает указатель, можно получить, щелкнув на отображаемом значении. При этом возникнет другое меню, содержащее значение объекта, на который указывал указатель. display Отображает в окне значение выбранного выражения, обновляя его значение при каждом останове. args Печатает аргументы выбранного блока. show display Выводит имена отображаемых выражений. search Осуществляет вывод панели, в которой можно отыскивать строки исходного файла в прямом и обратном направлениях. file Вызывает браузер, позволяющий перемещаться по дереву кталогов.
782 II Команды yes Посылает gdb ответ yes, если отладчик требует ответа. по Посылает gdb ответ по, если отладчик требует ответа. чи'1 Покидает отладчик. y©S - автоматизирует процесс создания многократных К. ответов на запросы других программ. Синтаксис yes [option]...[string]... Команда yes многократно выводит аргументы string командной строки, разделяемые пробелами и завершающиеся символом newline, до тех пор, пока не будет принудительно завершена. Если никакие аргументы не заданы, выводит символ у и символ newline. Многие команды "просят" пользователя ввести с клавиатуры ответы на вопросы. Если необходимо запустить некую команду, которая может задать десятки или даже сотни аналогичных вопросов, стоит прибегнуть к помощи команды yes, чтобы каждый раз не набирать с клавиатуры один и тот же ответ. Опции —help Выводит список опций и завершает программу. --version Выводит информацию о версии программы и завершает ее выполнение. Команда yes передает свой вывод по конвейеру, однако не все команды для получения ответа читают стандартный ввод. В этом случае лучше использовать команду expect. Пример Ниже показано многократное предотвращение нежелательных удалений файлов rcsme* с использованием команды yes. аи misha@localhost.localdomain: /home/misha [rnishaElocalhost misha]* yes n Irm -i rcsme* rm: удалить Ycsme01.gif'? rm: удалить Ycsme02.gif'? rmj удалить Ycsme03.gif" rm: удалить Ycsme04.gif'? Broken pipe [mishaGlocalhost misha]t [mishaElocalhost mishal* I zcat распаковывает а»хивы, созданные gzip и compress Синтаксис zcat [-fhv][Jiane ] Можно сказать, что zcat идентична команде gunzip -с, т.е. распаковывает чноо список файлов, заданный в командной строке, либо стандартный ввод, направляя рсз>лыат на стандартный вывод.
II. Команды 783 Команда zcat распаковывает файлы, имеющие корректное магическое число (см file), вне зависимости от расширений имен файлов. По сути zcat отображает содержимое упакованного текстового файла, предварительно не распаковывая его. Можно сказать, что zcat работает, как и cat. Содержание опций команды zcat см. в описании gzip. zemp - сравнивает содержимое упакованных (сжатых) файлов. Синтаксис zemp [cmp-options] filel[file2] zemp вызывает для упакованных файлов программу стр, передавая ей все указанные опции cmp-options. Если в командной строке указано два файла, то они будут, если это необходимо, распакованы, а затем переданы программе стр. Если в командной строке указан только один файл, то производится сравнение содержимого файлов filel и распакованного filel.gz. Пример Производится сравнение содержимого файлов nnn и одноименного упакованного файла из архива archl.gz: $ zemp ~/rab/archl.gz ./nnn $ Содержимое полностью совпадает. zdiff - сравнивает содержимое упакованных файлов. Синтаксис zdiff [diff-options] filel[file2] zdiff вызывает для упакованных файлов программу diff, передавая ей указанные опции diff-options. Если в командной строке указано два файла, то они будут, если это необходимо, распакованы, а затем переданы программе diff. Если в командной строке указан только один файл, то производится сравнение содержимого файлов filel и распакованного filel.gz. ZforC© - добавляет к именам файлов, созданных с помощью gzip, расширение .gz. Синтаксис zforce [лаше...]
784 II Команды Команда zforce добавляет отсутствующее в силу разных причин расширение .gz к именам файлов, созданных с помощью gzip, так что их не требуется дважды упаковывать. ZCJTGP - производит поиск по шаблону строк файлов в gzip-архивах. Синтаксис zgrep [дгер-options][-e] pattern filename Команда zgrep используется, чтобы вызвать grep для сжатых и упакованных файлов filename. Все указанные опции grep-options передаются прямо grep. Если в командной строке отсутствуют имена файлов, будет распакован стандартный ввод, если это необходимо, и затем передан grep. Аналогичные команды zegrep и zfgrep, если существуют в системе, соответственно вызовут egrep и fgrep. Пример Поиск строк по шаблону ее производится среди файлов текущего каталога: $ zgrep -1 -е ее * 05.gif charset01.gif ctlinndl4.gif dist01.gif dist02.gif gr04.gif gr06.gif gr09.gif libss.so.2.0 myobj photo07.gif photo08.gif photo081.gif prim42 prim43 prim55 prim56 priin6 5 probal proba2 ргоЬаЗ $ В листинге можно обнаружить имена самых разных файлов, в том числе и графи-
П. Комакщы zipgrep производит поиск строк файлов, соответствующих шаблону, в ZIP-архивах. zipgrep [egrep-options] pattern fiie[.zip] [file. . . ] [-x xfile...] zipgrep - сценарий оболочки, вызывающий egrep и unzip. Его вывод идентичен выводу команды cgrep. Аргументы pattern Шаблон поиска внутри ZIP-архива. Может применяться любая строка или регулярное выражение, воспринимаемое egrep. /i/e[.zip] Маршрут к ZIP-архиву. [file...] Необязательный список членов архива, разделенных пробелами. Если данный аргумент отсутствует, поиск будет производиться по всему архиву, в противном случае - только среди указанных компонентов. [-х xfile...] Необязательный список компонентов (членов) архива, исключаемых из обработки. пции egrep-options Опции, передаваемые команде egrep. zipinfo - сооб ает детальн ю информацию о ZIP-архиве. Синтаксис zipinfo [-12smlvhHtTz] filel-zip][file ][-x xfile ] В состав распечатанной информации включаются полномочия на файлы, наличие шифрования, тип сжатия, версия, операционная или файловая система, к которой относятся сжатые программы, и т.п. По умолчанию для каждого файла архива предназначена одна строка листинга с заглавными и завершающими строками, содержащими информацию по всему архиву. Аргумент file[.zip] определяет маршрут к ZIP-архиву, аргумент file - необязательный список обрабатываемых членов архива. Список членов архива, исключенных из обработки, указывается с помощью -х xfile... Опции -1>. Перечисляет лишь имена файлов по одному в каждой строке. Эта оп- Т§) ция исключает любую другую информацию. -2 Перечисляет лишь имена файлов по одному в каждой строке, но также разрешает заголовки (-h), итоговые записи (-t) и комментарии (-г). s Распечатывает информацию в коротком формате команды Is -I. Опция принята по умолчанию.
786 II. Команды "m Создает листинг, идентичный выводу, создаваемому с помощью опции -s, дополнительно приводится коэффициент сжатия, выраженный в процентах. -1 Распечатывает информацию в длинном формате команды Is -1. Дополнительно вместо коэффициента сжатия включается размер упакованного файла в байтах. -v Использует подробный, многостраничный формат вывода. -h Выводит информацию о версии программы, функциях, опциях и завершает ее. -М Пропускает весь вывод через внутренний пейджер подобно команде more. При этом в конце экрана возникает приглашение —More--, а следующий экран появляется лишь после нажатия Enter. -t Выводит итоги по всем распечатанным файлам или вообще по всем файлам архива. -Т Распечатывает дату и время в отсортированном десятичном формате вида гглшдд.ччммсс (гг - год, мм - месяц, дд - день, чч - час, мм — минуты, ее - секунды). В формате, принятом по умолчанию, названия месяцев задаются в виде текстовых аббревиатур. -z Включает в листинг архивный комментарий, если таковой имеется. ZmOTG - отображает текст пакованных файлов. Синтаксис zmore [пате...] Команда zmore - это фильтр, позволяющий отображать сжатые или обычные файлы на экране терминала, zmore работает с файлами, упакованными compress, pack или gzip. Если указанный в командной строке файл не существует, zmore дополнительно просматривает файлы, имена которых были созданы путем добавления к заданному имени суффиксов -gz, л или .Z. Отобразив текст на экран, zmore обычно выполняет паузу, напечатав внизу экрана —More—. Если пользователь нажмет клавишу CR (carriage return - возврат каретки), выводит еще одну строку, если клавишу пробела - еще один экран. Программа zmore определяет характеристики терминала и размер окна на основании содержимого файла /etc/tcrmcap. Программа zmore не имеет опций, зато существует ряд команд, которые можно набирать во время пауз. Оснздны команды /Чпробел> Отображает следующие i строк. AD, d Выполняет прокрутку следующих одиннадцати строк. is Пропускает / строк, а затем отображает очередной экран.
II. Команды 787 ' f 11ропускает i экранов, а затем отображает очередной экран Ч- Q Закрывает текущий файл, переходя к следующему, если таковой задай е Набранная после вывода приглашения типа —More— (Next Ш:имя_файла) завершает работу zmore. s Набранная после вывода приглашения типа —More— (Next Ше:имя_файла) пропускает один файл. = Отображает текущий номер строки. ilexpr Осуществляет поиск /'-го появления регулярного выражения ехрг \command Вызывает команду оболочки. Повторяет предшествующую команду. ZT1GW - пе»е паковывает оайлы «ормата .Z в формат .gz. Синтаксис znew [-ftv9PK] [name.Z ] Переупаковывает файлы name.Z (compress) в формат .gz (gzip). Если вы желаете переупаковать файлы, ранее созданные gzip, например, с другими опциями, переименуйте их вначале, установив расширение .Z, а затем применяйте команду znew. Опции -f Принудительно переупаковывает из формата .Z в -gz, даже если существует одноименный файл с расширением .gz. -t Тестирует (проверка на целостность) новые файлы перед удалением оригиналов. -v Выводит имя и процент сжатия для каждого упакованного файла. -9 Использует метод наиболее медленного (оптимального) сжатия. -Р Использует конвейеры. -К Сохраняет упакованный файл в формате .Z, если он меньше, чем его аналог в формате .gz. ■ (ТОЧКЭ) - считывает и выполняет команды из указанного файла в окружении текущей оболочки. См. команду source.
788 Приложения Приложение I Допустимые сигналы N/N Наименование Описание (сокращение) 1 SIGHUP (HUP) Зависание. Часто используется в целях уведомления процесса о необходимости перезагрузить файлы конфигурации. 2 SIGINT(INT) Прерывание. 3 SIGQUIT(QUIT) Выход. 4 SIGILL(ILL) Недопустимая команда. 5 SIGTRAP (TRAP) Перехват по трассировке. 6 SIGIOT(IOT) Команда IOT-останов ввода/вывода. 7 SIGBUS (BUS) Ошибка на шине. 8 SIGFPE (FPE) Исключительный случай в операции с плавающей запятой. 9 SIGKILL (KILL) Снятие задания (процесса). Сигнал не может быть перехвачен, блокирован,проигнорирован. 10 SIGUSR1 (USR1) Пользовательский сигнал 1. 11 SIGSEGV (SEGV) Прерывание по сегментации. 12 SIGUSR2 (USR2) Пользовательский сигнал 2. 13 SIGPIPE(PIPE) Запись и передача по конвейеру (без чтения). 14 SIGALRM (ALRM) Сигнал от таймера. 15 SIGTERM (TERM) Программное прерывание. Часто посыпается до сигнала KILL, что позволяет процессу перехватить этот сигнал и приготовиться к завершению. 16 SIGSTKFLT Ошибка сопроцессора. 17 SIGCHLD (CHLD) Был изменен статус дочернего процесса. 18 SIGCONT (CONT) Продолжение после сигнала STOP. Этот сигнал не может быть блокирован. 19 SIGSTOP (STOP) Останов. Сигнал не может быть перехвачен (ибо поддерживается в самом процессе), блокирован, игнорирован. 20 SIGTSTP (TSTP) Сигнал останова от клавиатуры, обычно возникающий при нажатии Ctrl+Z. 21SIGTTIN Попытка чтения в фоновом режиме со стороны управляющего терминала.
Приложения 789 Приложение I (продолжение) N/N Наименование (сокращение) Описание Попытка записи в фоновом режиме на управляющий терминал. Срочное условие, связанное с сокетом. Превышение лимита времени ЦП. Превышение размера файла. Сигнал от виртуального таймера. Профилирование сигнала таймера. Изменение размера окна. Возможна операция ввода/вывода с файлом, имеющим указанный дескриптор. Отключение питания. Неправильный системный вызов. Самый высокоприоритетный сигнал реального времени. Самый низкоприоритетный сигнал реального времени. 22 23 24 25 26 27 28 29 30 31 33 63 SIGTTOU SIGURG SIGXCPU SIGXFSZ SIGVTALRM SIGPROF SIGWINCH S1GIO SIGPWR SYGSYS SIGRTMIN SIGRTMAX Приложение II Имена устройств и их номера Порт Имя устройства Главный Дополнитель- номер ный номер Параллельные порты /dev/lpO /dev/lp1 /dev/lp2 Входящие последовательные СОМ1 /dev/ttySO 4 П°РТЫ COM2 /dev/ttyS1 4 COM3 /dev/ttyS2 4 COM4 /dev/ttyS3 4 Исходящие последовательные СОМ1 /dev/cuaO П°РТЫ COM2 /dev/cua1 COM3 /dev/cua2 COM4 /dev/cua3 64 65 66 67 64 65 66 67 * Вы можете использовать устройства /dcv/ttySx для входящих и исходящих последовательных подключений.
790 Приложения Приложение III Несколько общеизвестных цветов, выраженных в шестнадцатеричном формате Цвет черный красный зеленый синий желтый фиолетовый сиреневый белый Значение #000000 #ff0000 #00ff00 #0000 ff #ffff00 #00ffff #ff00ff #ffffff Приложение IV Типы серверов X Четыре типа серверов X соответствуют четырем секциям Screen в файле XF86Config: Элемент Описание Vga2 Х-сервер для монохромных видеокарт VGA vga 16 Х-сервер для 16-цветных карт VGA svga Х-сервер для карт SuperVGA accel Х-сервер для акселерированных наборов видеочипов: Mach8, Mach32. Mach64, AGX/XGA, 8514/А, S3,1128, Р9000 Один из этих серверов вы выбираете при инсталляции. Приложение V Формат RCS-файла Содержимое RCS-файлов описывается согласно приведенным далее грамматическим правилам. Следующие символы называются white space (неизображаемые символы): пробел, возврат на позицию, табуляция, новая строка, вертикальная табуляция, перевод строки, возврат каретки. Содержимое RCS-файла — текст свободного формата, неизображаемые символы существенны только в строках. Неизображаемые символы не допускаются в составе id, num или sym, a RCS-файл должен заканчиваться символом newline (новая строка). Строки завершаются символом @. Если в самой строке встречается символ @, для правильного восприятия он должен быть удвоен.
Приложения 791 Метасинтаксис использует следующие последовательности: | вертикальная черта разделяет альтернативные выражения { } заключает необязательные предложения { } * заключает предложения, которые могут быть повторены ноль или более раз { }+ заключает предложения, которые должны, по меньшей мере, появиться однажды, но могут и повторяться. rcstext ::=admin {delta}* desc {deltatext}* admin ::=head {num}; {branch {num};} access {id}*; symbols {syminum}*; locks {id:num}*; {strict ;} {comment {string};} expand {string};} {newphrase}* delta ::=num date num; author id; state {id}; branches {num}*; next {num}; {newphrase}* desc ::=num log string {newphrase}* text string num ::={digit|.}+ digit ::=0|l|2|3|4|S|6|7|8|9 sym ::={digit}* idchar {idchar|digit}* idchar ::=любой визуальный графнческий свмвол special ::=$|,|.|: |; |S string ::=£{лвбой символ, двоняойв}*? newphrase ::=idword*; word ::=id|num|string|: Данные правила лучше разбирать в обратном порядке. В качестве word (слова) используются id (идентификатор), num (число), string (строка) или двоеточие; newphrase (новое предложение) - это либо идентификатор, либо слово, которое может быть повторено ноль или более раз; string (строка) — набор символов, повторенный ноль или более раз, строка завершается символом @. В качестве special (специальных символов) применяются знак доллара, запятая, точка, двоеточие, точка с запятой и символ @; idchar - это любой визуальный графический символ кроме специальных символов. Идентификаторы чувствительны к регистру. Ключевые слова набираются только строчными буквами (нижний регистр). Наборы ключевых слов и идентификаторов могут перекрываться. В большинстве сред система RCS применяет кодирование в стандарте ISO 8859/1: визуальные графические символы - это коды 041-176 и 240-377, white space (нензображаемые символы) - 010-015 и 040. Даты появляются после ключевого слова date в формате Y.mm.dd.hh.mm.ss, Y- это год, содержащий две цифры для годов от 1900 до 1999 и все цифры для последующих годов, mm - месяц (01-12), dd - день (01-31), hh - час (00-23), здесь mm - минуты (00-59), м - секунды (00-60). Используются даты грегорианского календаря и время в формате UTC.
792 Приложения Компоненты грамматики newphrase зарезервированы в формате RCS-файлов для будущих расширений, они не могут начинаться с уже используемых ключевых слов. Узлы delta формируют дерево. Узлы, имена которых состоят из одной пары (4.3, 2.6,1.2 и т.д.), расположены на стволе (trunk) и связываются через поле next в порядке убывания номеров. Поле head в узле admin указывает на заголовок последовательности, содержащей пару наивысшего уровня, branch - на ветвь или версию, принятую по умолчанию для большинства операций RCS. Если значение branch пустое, в качестве ветви по умолчанию берется наивысшая ветвь ствола. Все узлы delta, чьи номера содержат 2и полей, где и принимает значение от 2 и выше (4.1.11.1, 2.5.12.2 ... и т.д.), связаны в порядке следования. Все узлы, чьи первые 2л-1 полей идентичны, связываются через поле п в порядке возрастания номеров. Для каждой подобной последовательности узел delta, чей номер идентичен первым 2и-2 полям на последовательности, называется head. Пример организации RCS-файла отражает следующая диаграмма. Возможный вариант дерева версий Приложение VI Аббревиатуры, встречающиеся в описаниях команд Англоязычные аббревиатуры ACLs Access Control Lists - списки управления доступом к файлам. ACM Application-Charset Map - таблица отображения символов для пользовательского приложения. ANSI American National Standard Institute - Американский национальный институт стандартов. ANSI-формат - это текстовый формат. ARIN American Registry for Internet Numbers - Американский реестр номеров Internet. ARP Address Resolution Protocol - протокол разрешения адреса, определяет адрес Ethernet, соответствующий данному IP-адресу. ASCII American Standard Code for Information Interchange - стандартный американский код обмена информацией.
Приложения 793 ATIP Absolute Time in Pre-groove, или просто pre-groove - абсолютное время (нахождения) в спиральном желобке, или просто спиральный желобок. В служебной области каждой болванки компакт-диска содержатся сведения о самом носителе. Этот информационный блок называется ATIP, в нем содержатся сведения об емкости носителя, типе и назначении, максимальной скорости записи и пр. a. Out оригинальный формат исполняемых двоичных файлов, используемый в Unix и первых версиях Linux. ВСС blind carbon copies - "слепые" копии почтовых сообщений. BDF Bitmap Distribution Format фирмы Adobe - графический растровый монохромный формат, в котором распространяются шрифты X. BIOS basic input/output system - базовая система ввода/вывода, хранится в ПЗУ. BMP Microsoft Windows bitmap - растровое монохромное изображение от Microsoft. BSD Berkeley Software Distribution - система Unix, вышедшая из стен Калифорнийского университета г. Беркли. САМ Common Access Method - стандартный метод доступа (для SCSI). САМ Computer-Aided Manufacturing - автоматизированная система управления производством, технологическими процессами (АСУП, АСУ ТП). С С carbon copies — копии почтовых сообщений. CD Compact Disk - компакт-диск. Тип сменного пластикового диска с оптическим считыванием информации. CD-DA Compact Disk-Digital Audio - формат цифрового аудио компакт-диска, известный также под названием audio Red Book (аудио в формате Red Book). Сектор в формате CD-DA содержит данные, обеспечивающие воспроизведение музыки в течение 1/75 секунды. CDI Compact Disk Interactive - интерактивный (взаимодействующий) компакт- диск. Формат лазерных дисков, предполагающий хранение на одном диске интегрированных данных: аудио-, движущегося видео- и текстовой информации. CD-ROM Compact Disk Read-Only Memory - ПЗУ на компакт-диске. CD-ROM XA Compact Disk Read-Only Memory/Extended Architecture - оптический компакт-диск ПЗУ с расширенной архитектурой. Представляет собой сочетание CD-ROM и системы цифровой записи звука на компакт-диске (см. CD-DA). CHECK/TAKETHIS проверь/и бери это - потоковое расширение, или протокол обмена новостями. CMOS complementary metal oxide semiconductor - комплементарная структура, микросхема вашего компьютера.
794 Приложения CMYK Cyan-Magenta-Yellow-Black-голубой-пурпурный-желгый-черный Формат CMYK—это цветовая система, альтернативная RGB и предназначенная для вывода на монитор и для печати на струйных принтерах цветных изображений. CR carriage return — символ возврата каретки. CRC cyclic redundancy check - контроль информации с помощью циклического избыточного кода. CVS Concurrent Version System - система параллельно действующих версий. CWIS Campus Wide Information System - глобальная учебная (университетская) информационная система. C++ язык программирования. DARPA Defence Advanced Research Project Agency - агенство передовых исследовательских проектов министерства обороны США, создатель сети Internet. DES Data Encryption Standard - стандарт шифрования, разработанный фирмой IBM. Пересматривается каждые пять лет и запрещен для экспорта в другие страны. DHCP Dynamic Host Configuration Protocol - протокол динамической настройки хостов. DLL Dynamic Link Library - динамически компонуемая библиотека. DMA direct memory address — прямой адрес памяти. DNS Domain Name System - система имен доменов. dpi dots per inch - точек на дюйм (разрешение). DSN Delivery Status Notification - извещение о состоянии доставки. Является расширением протокола SMTP. DSO Dynamic Shared Object - динамический разделяемый (совместно используемый) объект (файл или программа). DVD Digital Video Disk - цифровой видеодиск, или Digital Versatile Disk - универсальный цифровой диск. DVE Digital Video Effect - цифровые спецэффекты (ЦСЭ), которые создаются при помощи компьютерных систем, микшеров, специальных устройств и позволяют растягивать, сжимать, вращать, переворачивать видсокартинку в любом направлении, создавая мозаику, раскраску и пр. EBCDIC Extended Binary Coded Decimal Interchange Code - расширенный двоично- десятичный код обмена информацией. ELF Executable and Linking Format - исполняемый и компонуемый (связывающий) формат. Речь идет о формате исполняемых двоичных файлов. Его структура обеспечивает удобную реализацию разделяемых библиотек.
Приложения 795 EOF End of File - конец файла. ESC escape character - символ начала управляющей последовательности. ETRN Extended token ring network - расширенный протокол кольцевой сети с маркером. Ethernet набор оборудования для создания определенного типа сетей: длинный, чаще всего коаксиальный кабель, к которому подсоединены сетевые узлы. FIB Forwarding Information Base - базовая информация по переназначениям; представляет из себя таблицу маршрутизации, хранящуюся в ядре, с помощью нее осуществляется поддержка IP-переназначений. Fl FO (First in - First out, первым вошел — первым вышел, в названии отражен способ обслуживания) — один из типов специальных файлов, используемых для передачи информации между одновременно работающими процессами. FQDN FTP GID Fully Qualified Domain Name - полное официальное (правомочное) имя домена. File Transfer Protocol - протокол передачи файлов в IP-сетях. group identifier — идентификатор группы. GIT GNU Interactive Tools - GNU-пакет интерактивных программ, позволяющих работать с файлами: просматривать, распаковывать, увидеть изображение графического файла и т.п. GMT см. UTC. Gopher служба Internet, обеспечивающая доступ к информации через выбор в меню. GUI GNU HTML HTTP ICM Graphic User Interface - графический интерфейс пользователя. GNU's Not Unix - игра слов "GNU - это не Unix". Речь вдет о проекте GNU - о разработке свободно распространяемого программного обеспечения. Hypertext Markup Language - язык разметки гипертекста. Hypertext Transfer Protocol - протокол передачи гипертекста. ICC color management - управление цветом карты с интегральной микросхемой. Internet Control Message Protocol - протокол управляющих (служебных) сообщений в Internet. идентификатор. _ IHAVE/SENDME Я имею/присылай - высокоуровневый протокол службы новостей, осуществляющий передачу сообщений между компьютерами (см. команду innfeed). I MAP Interactive Mail Access Protocol - протокол интерактивного почтового до ступа. _ _ 1СМР ID
796 Приложения INN InterNetNews - служба сетевых новостей. IPC interprocess communication - взаимодействие процессов. IPX Internetwork Packet Exchange — протокол обмена пакетами в сетях, состоящих из подсетей, основной протокол обмена в сетях фирмы Novell. IRIX Unix от фирмы SGI. IRQ Interrupt Request Query - номер запроса на прерывание, или номер прерывания. ISDN Integrated Services Digital Network - цифровая сеть интегрированных служб, использующая цифровую передачу данных вместо аналоговой. ISR International Standard Recording- международный стандарт записи (для компакт-дисков). irtt initial round trip time - время задержки, необходимое для посылки сетевого пакета по указанному адресу (см. команду ping) и возвращения пакета обратно. JBIG Joint Bi-level Image experts Group - объединение группы экспертов по двухуровневому изображению, разработавшее стандарт компрессии изображения. Компрессия по стандарту JB1G характеризуется высокой эффективностью без потерь данных от компрессии и декомпрессии. J PEG Joint Photographic Expert Group - графический формат объединенной группы фотоэкспертов: сжатый 24-битный цветной формат. kdm KDE display manager - менеджер дисплея KDE. LED light-emitting diode - светодиод клавиатуры. LF line feed - перевод строки. LMA load memory address - адрес загрузки в память (программных секций). LS В least significant bit/byte - младший (последний) значащий бит/байт. LUN Logical Unit Number - номер логического устройства. LVM Logical Volume Manager - менеджер логических томов. MD5 Message Digesting Algorithm - один из алгоритмов подписи сообщения от фирмы RSA Data Security, Inc. М DA Mail Delivery Agent - агент доставки электронной почты. MIME Multipurpose Internet Mail Extensions - многоцелевые почтовые расширения имен файлов в Internet, для сообщений, приходящих в формате, отличном от ASCII. ММС MultiMedia Compact (Disk) - мультимедийный компакт-(диск). Один из проектов по разработке CD большой емкости для записи мультимедийных программ (аудио, видео, компьютерная информация) предложен фирмами Sony и Philips.
Приложения 7Q7 М О Machine Object - машинно-зависимый объект. Файл формата МО привязан к компьютеру определенной архитектуры. MSB most significant bit/byte - старший значащий бит. MSS Maximum Segment Size - максимальный размер сегмента протокола TCP. MTU Maximum Transfer Unit - максимальное количество байт (пакет), передаваемых в сети за раз. NFS Network File System - Сетевая Файловая Система. NIS/YP Network Information System - Сетевая Информационная Система, старое название YP - Yellow Pages - Желтые Страницы. Основана на RPC. N L newline - символ новой строки. NLM Netware Loadable Module - загружаемш модуль Netware. NNTP Network News Transport Protocol - сетевой протокол передачи новостей. NTP Network Time Protocol — протокол сетевого времени, с помощью которого в Internet производится синхронизация системного времени компьютера пользователя с системным временем сервера. OSI Open System Interconnection - взаимодействие открытых систем, модель структуры сетевого программного обеспечения, которая легла в основу стандартов ISO. РВМ Portable bitmap - графический формат: черно-белое переносимое растровое изображение. PCF Portable Compiled Format - графический переносимый откомпилированный формат. PCI Peripheral Component Interconnect - подсоединение периферийных компонентов (устройств). PDF Portable Document Format - мобильный формат документа для форматированного текста и графики. PGID parent group identifier - идентификатор группы родительского процесса. PGM Portable graymap - графический формат: переносимое изображение в градациях серого. PID process identifier - идентификатор процесса. РМА Program Memory Area - программная область, второй участок SUA на компакт-диске. Для аудиотреков в РМА хранятся отметки начала и конца, а для дорожек данных - адрес начального сектора. Это своего рода временное оглавление диска, которое используется до момента закрытия диска или сессии (сеанса). РО Portable Object - переносимый объект. Файл формата РО - это мобильный файл.
798 Приложения POP Post Office Protocol - протокол почтового отделения; письма хранятся на отдельном компьютере и извлекаются оттуда при чтении. Для пересылки и приема почтовых сообщений может использоваться sendmail, хотя существуют и другие варианты. PPID parent process identifier - идентификатор родительского процесса. PPM Portable pixmap format - графический формат: цветное переносимое растровое изображение. РРР Point-to-Point Protocol - протокол точка-точка. Протокол канального уровня, предназначенный для передачи через каналы связи типа точка-точка пакетов в формате других протоколов. Протокол РРР может использоваться для передачи через модемные линии связи и каналы ISDN. PSF файл в формате PostScript(file). RAID Redundant Array of Inexpensive Disks - массив недорогих дисков, на каждом из которых в целях надежности помимо собственной информации хранится дополнительная (избыточная) информация, позволяющая заменить любой другой диск этого массива. RAM Random Access Memory - запоминающее устройство с произвольной выборкой (оперативная память). RAMDAC чип, конвертирующий содержимое видеопамяти в аналоговые сигналы, посылаемые на монитор. RARP Reverse Address Resolution Protocol - протокол обратного разрешения адреса. По адресу Ethernet определяет соответствующий IP-адрес. Используется в процессе загрузки. RCS Revision Control System - система управления версиями. RFC Request for Comments - запрос комментариев. Набор документов, содержащих описание многочисленных стандартов, применяемых в Internet. RGB red, green, blue (красный, зеленый, синий) - формат спецификации, идентифицирующей цвет текстовых или графических элементов окна. RGID Real Group ID - реальный (подлинный) идентификатор группы. RIP Routing Information Protocol - протокол информации о маршрутизации. ROM read only memory - (см. ПЗУ). RPC Remote Procedure Call - дистанционный (удаленный) вызов процедур. RPM Red Hat Package Manager - менеджер пакетов Red Hat Linux; является одной из наиболее известных систем управления программными пакетами в мире Linux. RR Rock Ridge - это расширение предоставляет длинные имена файлов и Unix- подобные символические ссылки (ISO9660).
Приложения RSA RSS RTC RUID SAO~ SI — 799 RSA-шифрование от фирмы RSA Labs, предполагает алгоритм асимметричного шифрования с открытыми ключами. Resident sei size - размер (Кбайт) реальной памяти, используемой процессом. real time clock - часы реального времени. Real User ID - реальный (подлинный) идентификатор пользователя. Session At Once - сеанс записи (CD-ROM) за один проход, работает только с устройствами ММС. SCSI small computer system interface - системный интерфейс малых компьютеров, служит для подключения быстродействующих периферийных устройств. SFM screen-font-map — таблица отображения шрифтов на экране. SGI Silicon Graphic, Inc. - американская фирма, разрабатывающая высокопроизводительные графические системы и рабочие станции. SGID Set Group ID - установить идентификатор группы. Бит полномочий (аналогичен SUID), включение которого дает программе все права группы, владеющей самим исполняемым файлом. International System of Units — международная система единиц измерения. SID SSH Session ID - идентификатор сеанса. SLIP Serial Line Internet Protocol - протокол, предназначенный для передачи пакетов IP через последовательную линию связи. SMP Symmetric Multi Processing - симметричное мультипроцессирование. SMTP Simple Mail Transfer Protocol - простой протокол передачи электронной почты. Система, основанная на этом протоколе, обычно напрямую соединяется с машиной получателя и передает данные непосредственно демону SMTP. Secure Shell - оболочка безопасного соединения. SSL Secure Sockets Layer - протокол безопасности уровня сокетов. Протокол с шифровкой по ключу, разработанный компанией Netscape Communications для Web-серверов и для использования в браузере Netscape Navigator. SUA System Use Area - системная область, согласно спецификации Orange Book записываемые и перезаписываемые компакт-диски содержат две области: системную и информационную. По своему назначению аналогична загрузочному сектору жесткого диска н занимает полоску шириной 4мм в самом начале диска. Эта область, в свою очередь, разделена на два участка, второй из которых называется РМА.
800 Приложения SUID Set User ID - установить идентификатор пользователя. Обычно владельцем исполняющейся программы является тот, кто запустил ее на выполнение. Но, если включен бит полномочий SUID (см. команду chmod), владельцем программы будет собственник исполняемого файла. SUN Sun MicroSystem, Inc. - американская фирма, выпускающая мощные графические станции, кластерные системы. SUSP System Use Sharing Protocol - протокол раздельного использования в системах, записи которого указываются протоколом обмена RR (Rock Ridge) Эта особенность применяется для того, чтобы позже описать файлы из файловой системы ISO9660 для хоста Unix, предоставляя информацию по длинным именам, UID/GID, полномочиям, символическим ссылкам, блочным и символьным устройствам. TAB символ табуляции. TCP Transmission Control Protocol - протокол управления передачей потока данных через IP. ТСХ тип файлов системы teTeX. TELN ET teletype network - сетевой телетайп, сетевой печатающий терминал (название с историческими корнями). Эта служба Internet создает терминальный сеанс на дистанционном компьютере, позволяя пользователям подключиться и выполнять команды так, будто они работают на упомянутом дистанционном компьютере локально. Однако в этом случае пользователям придется вместо системы X Window работать в терминальной среде. ТеХ язык верстки системы teTeX. TIFF Tagged Image File Format. Графический формат: изображение с тегами (метками). teTeX система верстки текстов. ТОС Table Of Contents - таблица содержания, каталог (компакт-диска). TOS Type of Service - тип обслуживания (сервиса), поле в заголовке IP-пакета. TPI twisted-pair interface - интерфейс витой пары. TTL Time To Live - время жизни. Обязательное поле, включенное в заголовок IP-пакета (см. traccroute). tty Teletype - телетайп (устройство) и одноименная компания, начавшая много лет тому назад производить первые терминалы для Unix. В настоящее время данная аббревиатура подразумевает любой алфавитно-цифровой терминал. UART Uni vercal Asynchronous Receiver/Transmitter - универсальный асинхронный приемопередатчик, или УАПП. Микросхемы типа Intel 8251, 16450 и др., преобразующие данные, поступающие по параллельным линиям, в данные, передаваемые последовательно, и наоборот.
Приложения 80J UDP User Datagram Protocol - протокол пользовательских дейтаграмм. UID user identifier - идентификатор пользователя. Unicode стандарт кодирования, предусматривающий шестнадцатиразрядную кодировку символов национальных языков, что упрощает реализацию алфавитов, отличных от латинского. URL Uniform Resourse Locator - унифицированный локатор ресурсов. Usenet одна из крупнейших систем обмена новостями. Первоначально была основана на использовании UUCP, однако сейчас для обмена новостями используют разнообразные технологии. UTC Coordinated Universal Time - согласованное (правомочное) универсальное время. U U Unix-Unix (кодирование). UUCP Unix-Unix-Copy - система взаимодействия между Unix-машинами, включающая пересылку файлов, дистанционный запуск заданий, эмуляцию терминала. U UID universally unique identifier - повсеместно уникальный идентификатор. UWI N University of Washington Information Navigator - навигатор службы информации Вашингтонского университета. VMA virtual memory address - виртуальный адрес памяти (секций объектных файлов). WAIS Wide Area Information Service - глобальная информационная служба. WWW World Wide Web-всемирная паутина. X11 многооконная система (см. X). X Window многооконная система (см. X). ХВМ XII bitmap (file) - графический формат: черно-белый растровый файл XII. XDMCP XDisplay Manager Control Protocol - стандартный протокол управления Х-дисплеями. ^d ~~"дТмон^итронизации времени с исп^ованием сети и/или радиоприемни- ков. ХРМ X Window system pixmap - графический формат: цветной растровый файл X Window. _ YUV Формат представления данных цветного видеоизображения: "яркость-цвет- Ггь синего-цветность красного". Здесь U и V - цветоразностные сигна- лы. Применяется в видеоклипах_МРЕ<1_
802 Приложения Русскоязычные аббревиатуры БД база данных. МЛ магнитная лента. Н ГМ Д накопитель на гибких магнитных дисках. НМЛ накопитель на МЛ. ПЗУ постоянное запоминающее устройство компьютера. ЦП центральный процессор. Приложение VII Файлы, упомянутые в описаниях команд active - список всех групп новостей, принимаемых локальным сайтом. active.times - отражает хронологию создания групп новостей; этот файл обычно модифицируется innd, когда выполняется одна из команд ctlinnd под названием newgroup, создающая группу новостей. amd.conf - файл конфигурации программы автоматического монтирования по имени amd, содержит директивы для каждой опции командной строки. components - в этом файле (mh, xmh) содержится предварительная форма сообщения. conf/httpd.conf - файл конфигурации Web-сервера Apache. dead.letter - файл "умерших" писем, обычно располагается в исходном каталоге пользователя; может содержать частичные сообщения, которые попадают сюда в результате аварийных ситуаций. defkeymap.map - принятая по умолчанию во многих системах Linux таблица трансляции клавиатуры, используемая драйвером клавиатуры. distcomps - в системе nmh (xmh) этот файл, находящийся в пользовательском каталоге, используется в качестве взятой по умолчанию формы почтового сообщения. Distf ile - альтернативный файл конфигурации команды rdist. Применение файла distfile указывается с помощью флага -f, а иначе команда rdist осуществляет поиск файла Distfile в текущем каталоге. distfile - файл конфигурации команды rdist. Он содержит все определения и правила (см. описание rdist), которые требуются команде rdist для правильного распространения ваших файлов. encodings.dir - список известных кодировок и файлов, где они хранятся. Всякий раз, когда открывается шрифт с неизвестным набором символов, этот файл считывается Х-сервером и сервером шрифтов.
Приложения И0"\ fetchmailrc - файл конфигурации для fetchmail. fonts.alias - список псевдонимов (новых имен) существующих шрифгов fonts.dir- файл с описаниями шрифтов, должен обязательно присутствовать в каждом каталоге со шрифтами по маршруту сервера шрифтов fonts.scale - список масштабируемых шрифтов указанного каталога. forwCOmps - пользовательский файл, обычно располагается в каталоге <mh-dir>; в нем хранится основа стандартного почтового сообщения (см. forw). fstab см. файл /etc/fstab. fs/fat/misc.C - общепринятое имя файла (в конкретных версиях I inux фактическое имя может и отличаться), содержащего перечень общеизвестных расширений имен двоичных файлов. ftpaccess - файл конфигурации, используемый демоном ftpd. Записи файла выглядят следующим образом: class <class> <typelist> <addrglob>[<addrglob> ] При этом параметр class указывает класс пользователей с исходными адресами в форме <addrglob>. С помощью <addrglob>, используя символы замещения, можно указать имя домена или числовой адрес. Параметр < typelist> — это список разделенных запятыми ключевых слов: anonymous (анонимный), guest (гость со специальным счетом) и real (разрешен доступ к реальным счетам). GNUmakefile - аналог файла makefile (см. команду make). gmon.sum - итоговый профиль (см. gprof). gmon.Out - профиль выполнения программ (см. gprof) на языках С, Pascal или Fortran77. history - протокол команд оболочки. history - протоколирует сведения о всех статьях, в настоящее время хранящихся в службе новостей, а также и о тех, которые были ранее получены, но уже устарели. Imakefile - временный входной файл для срр (см. imake). Imakefile.C - см. файл Imakefile. Imake.tmpl - главный файл с образцом (шаблоном) для imake. inbOX - почтовая папка, принятая по умолчанию в ряде почтовых программ (например xmh и др.). incoming.conf - содержит имена и адреса тех, кто подпитывает нас новостями, innfeed - каталог для собственных файлов регистрации npoi раммы innfecd. innfeed.COnf - файл конфшурации программы (команды) iniifced, в котором описаны поддерживаемые сетевые узлы.
804 Приложения innfeed.pid - файл, в который innfeed записывает PID своего процесса. innfeed.status - файл регистрации состояния по каждому узлу и обработки в целом; заполняется программой innfeed. inn.COnf - конфигурационный файл для программ InterNetNews; каждая из строк файла содержит имя, двоеточие, необязательные символы whitespace (пробелы, символы табуляции), некоторое значение; в этом файле может быть описано несколько десятков параметров InterNetNews. keymaps - это файлы, используемые loadkeys для модификации таблиц трансляции, применяемых драйвером клавиатуры (драйвер ядра); файлы генерируются dumpkeys из этих таблиц трансляции. keysymdef.h - список имен кодов символов клавиатуры программы xmodmap. Может находиться в каталоге /usr/XHR6/include/Xll. Id .SO - динамический компоновщик для исполняемых файлов a.out; обычно загружает разделяемые библиотеки. Id-linux.SO - динамический компоновщик для исполняемых файлов ELF; обычно загружает разделяемые библиотеки. lex.yy.C - в этот файл записывается программа-сканер на языке С, сгенерированная flex. linux/fs/filesystems.C - общепринятое имя файла (в конкретных версиях Linux фактическое имя может и отличаться), содержащего перечень поддерживаемых типов файловых систем. lost+found - каждый раздел диска имеет такой каталог для сохранения "потерянных" файлов. lynx.Cfg - файл конфигурации браузера WWW под названием lynx. Mail - подкаталог (по умолчанию) исходного каталога пользователя для почтовых папок системы xmh (mh). mail - каталог (по умолчанию) для почтовых папок. mailcap - файл обычно содержит два столбца, в первом из которых через наклонную черту задается пара вид/подвид, описывающая тип MIME-сообще- ния, во втором столбце через пробелы перечисляются расширения имен файлов. Makefile - аналог файла makefile (см. make). makefile - описывает отношения между файлами программы и командами модификации каждого из этих файлов. minicom.users - список пользователей, которым разрешен доступ к программе minicom и ее файлам конфигурации. modules.dep - файл зависимостей, с помощью которого осуществляется автоматическая «грузка всех основных модулей ядра
Приложения 805 newsf eedS - хранит описания узлов, куда вы отправляете новости; позволяет построить специальные списки приемлемых групп новостей для каждого узла, который вы снабжаете новостями. nnrp.access - файл, определяющий доступ для читателей тех NNTP-сайтов, которые не поддерживаются главным демоном службы InterNetNews под названием innd; как только демон первый раз порождает nnrpd, последний считывает этот файл. nntpsend.Ctl - список сайтов, подпитываемых статьями новостей через nntpsend. nohup.OUt - файл, в который команда nohup перенаправляет стандартный вывод и файл ошибок. overview.ctl - файл конфигурации для унифицированного просмотра обзоров статей; состоит из набора текстовых строк, в каждой из которых хранится индекс (от 1до 255) и шаблон группы новостей. Overview.f mt - указывает формат организации БД обзоров новостей; если этот файл меняется, после удаления всех существующих обзорных файлов приходится перестраивать существующую базу обзоров, используя expireover; формат БД, как правило, предусматривает следующие поля: тема, откуда пришла статья, дата, идентификатор пришедшего сообщения, ссылки, размер статьи (байты), количество строк. overview.index - индекс статей БД обзоров новостей. passwd.nntp - участвует в аутентификации клиентов, подключаемых к серверам NNTP; содержит триплеты вида имя_узла - имя_пользователя - пароль. pine.conf _ системный конфигурационный файл для pine. printcap см. /ctc/printcap quota.group - файл квотируемых групп, должен обязательно присутствовать в корневом каталоге той файловой системы, для которой определены квоты. quota.h - текстовый файл, в котором можно снять комментарий с нужной строки, чтобы задействовать подходящие (они пойдут по умолчанию) квоты. quota.user - файл квотируемых пользователей, должен обязательно присутствовать в корневом каталоге той файловой системы, для которой определены квоты. rgb.txt - БД RGB-имен цветов. Обычно находится в каталоге /usr/XHR6/lib/Xll. sudoers см. /etc/sudoers systemdict - системный словарь. tags - файл, предварительно построенный ctags, для редактирования оригинального файла. termcap см. файл /etc/termcap.
806 Приложения terminfo — БД описаний терминалов: особенности, указания по выполнению экранных операций, символы-заполнители, управляющие последовательности troffre _ файл инициализации troff (системы форматирования документов). USerdict - пользовательский словарь. Utmp см. файл/var/run/utmp. wtmp - файл регистрации пользователей. XF86Conf ig - файл конфигурации, используемый серверами системы X Window, подробнее см. /etc/XIl/XF86Config XKeysymDB - БД кодов символов клавиатуры для утилиты xmodmap. Может находиться в каталоге /usr/XHR6/lib/Xll. Xservers — этот файл содержит по строке описания на каждый дисплей (не экран) локальной машины. В этих строках содержатся команды запуска Х-сервера на локальном дисплее. Xsetup_0 - сценарий, содержащий перечень программ, которые запускаются при старте X. Обычно файл сценария находится в каталоге /usr/XHR6Aib/Xll/ xdm. Xdm-config - файл конфигурации менеджера xdm системы X; менеджер дисплея, xdm, использует описания необходимых для запуска ресурсов. xferlog - журнал регистрации FTP-сервера. Обычно располагается в каталоге /usr/adm. Содержит подробные сведения о передаваемых файлах: время начала пересылки и ее продолжительность, направление передачи, размер файла, метод аутентификации и многое другое. xinitrc - содержит команды запуска выбранных пользователем клиентов системы X. xserverrc - файл инициализации, который содержит параметры запускаемого сервера системы X. /boot - каталог, содержащий загружаемое ядро и образ псевдодиска для RAID-устройств и SCSI-устройств. /boot/map - в этом файле содержится список ядер операционных систем и их местонахождение. Необходим загрузчику LILO. /dev/log — специальное устройство регистрации, используемое ядром Unix и большинством приложений, выполняющих регистрацию посредством syslog. /dev/mixer - файл микширующего устройства. /dev/null - файл псевдоустройства (нулевого устройства). Такое устройство полезно при отладке: скажем, позволяет выводить информационные потоки фиктивно, а не в действительности. /dev/rmtO - файл НМЛ.
Приложения 807 /etc/at.allow - список пользователей, которым разрешен доступ к at и batrh /etc/at.deny - список пользователей, которым запрещен доступ к at л batch. /etc/aumixrc - файл, содержащий настройки микшера. /etC/cdreCOfd.COnf - файл конфигурации, в котором могут быть установлены принятые по умолчанию значения некоторых переменных, имеющих отношение к записывающим устройствам CD на реальном или имитируемом SCSI-интерфейсе. /etC/COnfig/init - файл с параметрами запуска сервера X. /etc/conf.getty - конфигурационный файл, используемый getty, чтобы установить некоторые параметры времени выполнения. /etc/conf. modules - файл конфигурации для загрузки модулей ядра. /etc/crontab - содержит инструкции для демона стоп, указывающие, какие команды и когда следует запустить. /etc/diphosts - строки содержимого напоминают файл паролей и применяются для определения IP-адреса узла, используемого для входящего вызова некоторого пользователя. _ /etC/dumpdates-содержит записи дат копирования (резервирования) информации. /etc/ethers - список оборудования Ethernet; каждая строка файла содержит Ethernet-адрес (48бит) и соответствующий ему IP-адрес. /etc/exports - перечень экспортируемых файловых систем и тех клиентов, которым они доступны. /etC/fstab - содержит статическую информацию о файловых системах. /etc/gettydefs - БД параметров терминальной линии передачи информации. /etc/group- содержит полный список имеющихся групп, их идентификаторы и пароли, а также перечень пользователей, входящих в состав каждой чз -тих групп. /etC/gshadOW - файл теневых паролей^групп. /etc/hosts - содержит набор строк, в каждой из которых указан IP-адрес, имя соот- /6tC/h0 верующего узла и необязательный псевдоним. Если вы не соб„Р - тесь использовать для определения имен службы DNS или NIS^ Г. не обходимо поместить все имена узлов вашей сети в этот файл. /etc/hosts allow - содержимое этого файла призвано санкционировать доступ умов файле была определена соответствующая пара: лемон'кл.кнт.
Приложения /etc/hosts.equiv — на дистанционном сервере этот конфигурационный файл управляет доступом к нему и содержит строки доверительных хостов и пользователей в следующем формате: hostname [username] Здесь hostname — это имя хоста, с которого разрешается дистанционная регистрация без пароля, a username - необязательное имя пользователя, которому разрешено регистрироваться с данного хоста. Для одного хоста может быть указано несколько имен пользователей, а если они не указаны, значит регистрироваться без пароля разрешено всем пользователям данного хоста. Единственным требованием для применения г-команд является соблюдение идентичности идентификаторов пользователей (UID) на обеих машинах. Для указания любого хоста или пользователя может быть использован знак плюс в полях имен хостов и пользователей и знак минус - для отказа в доступе с конкретного хоста или определенному пользователю. Правила доступа, указанные в файле /ctc/hosts.cquiv, распространяются на всех пользователей данной машины. Для дополнительной безопасности файл /etc/hosts.equiv должен принадлежать суперпользователю. /etc/inetd.COnf - файл конфигурации суперсервера Internet (см. inetd;. /etc/initSCript - сценарий, используемый главным процессом init для выполнения команд из файла /etc/inittab. /etc/inittab - содержит описания процессов, стартующих во время загрузки операционной системы на указанном уровне (0-6) выполнения. /etc/iptOS - список символических имен типов IP-сервиса, если система это поддерживает. /etc/issue.net - текстовый файл, переменные которого определяют, что следует печатать в сеансе TELNET еще до вывода приглашения регистрации. /etc/Id.SO.COnf - список каталогов для поиска разделяемых (совместно используемых) библиотек. /etC/ld.SO.cache - упорядоченный список библиотек, найденных в каталогах, перечисленных в файле /etc/ld.so.conf. /etC/lilO.COnf - файл конфигурации загрузчика LILO. /etc/localtime - файл, с помощью которого назначается часовой пояс системы. /etc/login.defs - в этом файле определен максимальный срок существования пароля, минимальный срок между изменениями пароля, минимальная длина пароля, а также срок, начиная с которого выдаются предупреждения о скором истечении времени действия пароля. В нем еще указываются минимальные и максимальные значения, автоматически выбираемые в качестве UID и GJD.
Приложения ROQ /etc/logrotate.conf - файл конфигурации утилиты logrotate. Информация, относящаяся к каждому журналу и правилам его ротации, по умолчанию хранится в этом файле. /etc/mail.ГС - файл конфигурации почтовой программы mail; обычно содержит набор бинарных опций (см. mail), используется также и команды mailto. /etc/minirc.df I - файл конфигурации программы minicom. /etc/modules.COnf - необязательный файл конфигурации, содержащий список каталогов для поиска загружаемых модулей ядра. /etc/mtab - список текущих смонтированных файловых систем. /etc/named.bOOt - конфигурационный файл, содержит информацию, необходимую named для работы. В этом файле обязательно встретятся команды cache и primary. Первая из команд предписывает загрузить атрибуты корневого сервера имен из приведенного кэш-файла. Команда primary загружает информацию о зоне для данного домена из указанного мастер-файла. /etc/nmh/components - в этом файле хранится стандартная форма почтового сообщения. /etC/nmh/forwcomps - системный файл, хранящий основу стандартного почтового сообщения (см. forw). /etc/no — этот файл создается командой shutdown в случае отсроченного завершения работы системы и запрещает программам, таким, как login, регистрировать новых пользователей. /etc/passwd - файл паролей, содержит полезную информацию для каждого из счетов: идентификаторы пользователя и группы, исходная оболочка, шифрованный пароль. /etC/printCap - каждый элемент этой БД описывает один принтер. /etc/procmailrc - системный файл инициализации почтового процессора procmail. /etc/profile - системный профиль; интерактивная регистрирующая оболочка bash в первую очередь выполняет команды из этого файла инициализации. /etC/protOCOls - ASCII-файл, описывающий стек протоколов TCP/IP; каждая строка содержит наименование протокола, его официальный номер и псевдоним. /etc/raidtab - принятый по умолчанию файл конфигурации для RAlD-iiiicTpyMCHTOB (программа raidstart, raidadd и др.). /etC/rc[0-6].d - иерархия каталогов (конкретный номер в конце имени определяет уровень выполнения, или функционирования), содержащих многочиспен- ные ссылки на системные службы конкретного уровня. /etc/rc.d/init.d - каталог, содержащий полный перечень служб (сценариев) данной
810 Приложения /etc/ГС.d/rc.local см. файл /etc/rc.local. /etc/rc.d/rc.sysinit - один из основных системных сценариев. Когда стартует Linux, процесс init выполняет сценарий /etc/rc.d/rc.sysinit, который, в свою очередь, выполняет самые разные сценарии. /etc/rc.local - выполняется после других системных сценариев инициализации; ваш собственный сценарий в стиле сценариев System V. /etc/rc.serial — вызывается во время обычной загрузки системы из сценария /etc/ rc.d/rc.sysinit. Соответствующую строку с командой setserial можно поместить в сценарий /etc/rc.serial или создать файл сценария. /etC/resolv.COnf - в этом файле хранятся адреса серверов имен. /etc/rsyncd.conf - файл конфигурации, считываемый демоном пакета rsync (дистанционное копирование файлов). /etc/securetty - содержит список имен терминальных устройств, на которых разрешено регистрироваться суперпользователю. В каждой строке файла описано одно устройство без префикса /dev/. /etc/services - перечень символьных имен сетевых служб. /etc/shadow - файл теневых паролей пользователей. Содержит шифрованные пароли для счетов пользователей и необязательную информацию о сроке действия ("время жизни") паролей. /etc/share/magic - содержит описания существующих форматов файлов. /etc/shells - список доступных пользователю оболочек. /etc/shutdown.allow — список пользователей, которым разрешено закрывать систему, корректно завершая ее работу. /etc/skel - каталог-образец, содержащий каталоги и файлы инициализации для исходных каталогов пользователей. /etC/SSh/SSh__COnfig - общесистемный файл конфигурации ssh. /etc/sudoers - файл конфигурации утилиты sudo. /etc/sysconfig - в этом каталоге находятся файлы, содержащие информацию по разным сетевым интерфейсам. /etc/sysconfig/hwconf - БД описаний устройств (шина, винчестеры, видеосистема и т.д.). /etc/sysconfig/keyboard - файл, содержащий имя таблицы преобразования клавиатуры, а также тип клавиатуры. /etc/sysconfig/network - в этом файле в неременной HOSTNAMF хранится имя нашего сетевого узла. /etc/sysconficj/network-scripts - катачои содержащий сценарии запуска сетевых интерфейсов.
Приложения n t | /etc/sysctl.conf - загружает из этого файла установки для команды eysctl, позволяющей отображать и менять во время выполнения параметры ядра. /etc/syslog.conf - файл конфигурации сервера syslogd, состоящий из пар селекторов и действий. Позволяет определить действия, которые следует вы- полнить относительно конкретных сообщений. /etC/termcap - БД указателей типов терминалов. /etc/usertty - файл, содержащий дополнительные ограничения для пользователя в части занимаемых терминалов; используется в целях безопасности. /etc/utmp - системный файл, в котором регистрируются те, кто использует систему: пользователи и программы (команды). /etC/X11/fs/COnfig - файл конфигурации для сервера шрифтов системы X. /etC/X11/gdm/gdm.COnf - файл конфигурации менеджера дисплея под названием gdm из системы GNOME. /etC/X11/XF86Config - файл конфигурации системы X, содержащий секции описания монитора, мыши, клавиатуры, Х-серверов (см. приложение IV). /fastbOOt — файл, создаваемый в корневом каталоге командой shutdown, используется при быстрой перезагрузке системы, после чего удаляется. /forcefsck - файл, создаваемый в корневом каталоге командой shutdown, используется при перезагрузке с обязательной проверкой состояния файловой системы с помощью fsck, после чего удаляется. /lib/modules - в этом каталоге располагаются другие подкаталоги, не зависящие от версии ядра. /ргОС - файловая псевдосистема, используемая как интерфейс к структурам данных ядра. /proc/bus/pci - файл, содержащий информацию по шине PCI. Содержит подкаталоги с файлами конфигурации на каждую плату и файл устройств со списком всех устройств PCI. /proc/ksyms - содержит определения экспортируемых идентификаторов ядра, используемых инструментами, которые динамически компонуют и связывают загружаемые модули ядра. /proc/partitions - в этом файле перечислены имена устройств, их главные и дополнительные номера, а также занимаемое количество блоков. /prOC/stat- файл устройства для получения статистической информации, /proc/swaps - содержит информацию об областях (файлах) своппинга вашей системы, /sbin/update - файл выполняет запуск демона bdflush. /usr/dict/web2 - альтернативный словарь, используемый вместо /usr/dict/words. /USr/dict/wordS - системный орфографический словарь английского языка.
812 Приложения /usr/dOC/at-3.1.7/timespec - в файле с аналогичным названием можно найти спецификацию времени. /usr/include/linux/signal.h - список наименований сигналов. /usr/include/SyS/mtio.h - в этом файле содержатся структуры и определения команд ввода/вывода для НМЛ, константы, определяющие тип магнитной ленты, и пр. /usr/lib/groff/tmac - каталог, где обычно хранятся макроопределения groff. /usr/lib/kbd/COnsolefontS - по умолчанию используется в качестве каталога для хранения шрифтов. /usr/lib/kbd/COnsoletrans - по умолчанию используется в качестве каталога для хранения АСМ и SFM (см. consolechars). /usr/lib/kbd/keymaps/i386/qwerty - каталог, в котором хранятся различные таблицы отображения клавиатуры (для разных стран). /usr/lib/X11/fonts - каталог шрифтов X. /usr/lib/X11/rgb.txt - список допускаемых наименований цветов в формате RGB (red, green, blue - красный, зеленый и голубой ), см. приложение III. /usr/share/hwdata/pci.ids - БД с идентификаторами PCI-устройств, включая производителей, устройства, классы и подклассы устройств. /usr/share/magic см. файл /etc/magic. /usr/Share/zoneinfO - каталог, под которым расположена БД часовых поясов. /usr/spool/news - в большинстве систем Linux выступает в качестве спул-катало- га новостей, если только не используется NNTP. /usr/src/linux/drivers/char/defkeymap.c - этот файл автоматически генерируется loadkeys, он указывает привязки клавиш, которые используются по умолчанию. /usr/X11 R6/lib/X11 /Cards - БД доступных видеокарт для всех четырех типов серверов X (см. приложение IV). Каждое описание поименованной видеокарты содержит обязательные описания чипсета и одного из серверов, для которого предназначается конкретная карта. /var/lib/logrotate/status - принятый по умолчанию в Red Hat Linux файл состояния утилиты logrotate. Чтобы сохранить промежуточное состояние между запусками, logrotate сохраняет время последней ротации каждого журнала в файле состояния. Файл состояния гарантирует, что logrotate не будет выполнять смену журналов чаще одного раза в день, чтобы системный администратор не сделал это случайно еще раз. /var/lib/news/active - этот файл в большинстве систем выступает в качестве файла active (см. выше), если только не используется NNTP. /var/lock/minicom - местоположение (желательное) 1оск-файла ирогрвммы minicom.
Приложения ft 1 "J /var/log/btmp - БД, содержащая информацию о безуспешных попытках регистрации в системе. /var/log/messages - в этом файле ОС регистрирует основную часть своей информации. /var/log/sa - каталог учетных файлов. /var/log/sa/sadd-файл, куда накапливаются ежедневные учетные записи программы sar, здесь dd - день месяца. /var/log/sa/sardd - файл, куда накапливаются учетные записи программы sa2, здесь dd - день месяца. /var/log/wtmp - содержит записи logins/logouts о регистрации и выходе пользователей из системы. /var/run/utmp - содержит информацию о всех (пользователях или программах), использующих систему в настоящее время. /var/spool/cron - в этом каталоге содержатся пользовательские файлы crontab (см. файл /etc/crontab). /var/spOOl/lpd/lp - каталог спула (временных файлов) печати, принятый по умолчанию. /var/spool/mail/tvsername - принятое по умолчанию имя файла, который содержит список поступлений почты; username - имя пользователя, задаваемое при регистрации. /var/spool/mail/xxxx - папка, принятая по умолчанию, для входящей почты. /var/spool/news/.news - спул-каталог новостей (см. tin). /var/state/nfs/rmtab - содержит набор временных элементов, содержащих информацию по запросам на монтирование. Эти элементы удаляются при демонтировании. .addressbOOk - адресная книга (см. pine). .addresSbOOk.lu - индексный файл для адресной книги (см. pine), .aumixrc - файл, содержащий настройки аудиомикшера. .bashrc - когда запускается нерегистрирующая интерактивная оболочка, bash считывает и выполняет команды из этого файла. .bashjogin - bash считывает и выполняет команды из этого файла после обработки .bash_profile. .bashjogout - считывает и выполняет команды из этого файла при выходе из bash. .bash_profile - считывает и выполняет команды из этого файла после обработки /etc/profile. . cvsrc - файл инициализации системы CVS. .expect.rc персональный файл инициализации для команды expect.
814 Приложения .fetchids - в файле, используемом fetchniail, хранятся идеи гификаторы пользователей (при подключении по протоколу РОРЗ). .forward - такие файлы управляют доставкой сообщений (см. fetchmail и др.). .gdbinit - файл инициализации, содержащий команды шладчика GDB (см. gdb). .lynxrc - персональный файл инициализации браузера lynx. .mailcap - см. файл mailcap. .mh_profile - каждый пользователь nmh (xmh), мощной почтовой системы, должен иметь в своем исходном каталоге этот профиль. В нем содержится набор пользовательских параметров, применяемых семейством программ xmh. .mkisofsrc - файл конфигурации программы mkisofs. . netrc - файл конфигурации, используемый ftp, обычно располагается в исходном каталоге пользователя, его местоположение по умолчанию задается переменной НОМЕ. .newsrc - файл описания состояния групп новостей. .nslookuprc - пользовательский файл инициализации для nslookup, содержит начальные опции. . pinerc - персональный пользовательский файл конфигурации для программы pine. .pine-debug — в этот файл pine заносит свои отладочные диагностические сообщения. .plan - этот файл пользователь может создать в своем исходном каталоге, чтобы добираться к информации программы finger. .procmailrc - файл инициализации почтового процессора procmail из исходного каталога пользователя. .profile - оболочка bash считывает и выполняет команды из этого файла после обработки .bashjogin. .pullnews — файл конфигурации для pullnews, обычно располагается в исходном каталоге пользователя; описывает входящие узлы подключений и группы новостей, от которых будут получены статьи. .rhosts — этот конфигурационный файл на дистанционном сервере управляет доступом к нему и содержит строки доверительных хостов и пользователей в следующем формате: hostname [username] Здесь hostname - это имя хоста, с которого разрешается дистанционная регистрация без пароля, a username - необязательное имя пользователя, которому разрешено регистрироваться с данного хоста. Файл .rhosts. находящийся в исходном (домашнем) каталоге пользователя, управляет лишь доступом к конкретной учетной записи. Для дополнительной безопасности файл .rhosts должен принадлежат ь пользователю, пытающемуся получить доступ.
Приложения 815 .SIGNATURE - файл, содержащий подпись в MIME-формате (нетекстовая подпись) .Signature — файл, содержащий текстовую подпись. .SSh/config — пользовательский файл конфигурации ssh. .ssh/identity - удостоверяет личность пользователя по протоколу RSA версии 1. По умолчанию этот файл предлагается для секретного ключа. Этот файл не может быть прочтен никем другим кроме данного пользователя. .SSh/id_dsa - удостоверяет личность пользователя по протоколу DSA версии 2. По умолчанию этот файл предлагается для секретного ключа. Этот файл не может быть прочтен никем другим кроме данного пользователя. .ssh/id_rsa - удостоверяет личность пользователя по протоколу RSA версии 2. По умолчанию этот файл предлагается для секретного ключа. Этот файл не может быть прочтен никем другим кроме данного пользователя. .telnetrc — пользовательский файл инициализации для telnet-сеансов .tin/.news - каталог для хранения индексных файлов группы новостей (см. tin). .toprc - файл конфигурации команды top. .Xdefaults — в этом файле исходного каталога пользователя содержатся все ресурсы главного окна RESOURCE_MANAGER. С помощью опции -load (см. xrdb) можно наполнить этот файл. .XPaintrC - файл инициализации программы xpaint. .Xresources - файл ресурсов системы X (см. xrdb), обычно находится в вашем исходном каталоге. .xinitrc — файл из исходного каталога пользователя, см. файл xinitrc. .xmodmaprc - файл инициализации утилиты xmodmap, обычно находится в исходном каталоге пользователя. Содержит выражения, предназначенные для исполнения утилитой xmodmap. .xserverrc - файл из исходного каталога пользователя, см. файл xserverrc. Приложение VIII Перечень команд с кратким описанием их функций ас - выводит статистику о продолжительности подключения пользователей к системе, access - определяет, доступен ли файл. addr2line - конвертирует программные адреса в имена файлов и номера строк, adduser - псевдоним команды uscradd. adjtimex - выводит или устанавливает временные переменные ядра.
816 Приложения alias - назначает псевдоним для длинной команды. amd — автоматически монтирует файловые системы. amq - инструмент, запрашивающий автоматическое монтирование. anacron - периодически запускает команды на машинах, которые не работают постоянно. animate - демонстрирует последовательность изображений на компьютерах под ХП. _ _ answer - система транскрипции телефонных сообщений. appres - дает список ресурсов системы X. apropos — исследует базу данных whatis по ключевым словам. а Г - утилита упаковки. arch - выводит тип (архитектуру) аппаратной платформы компьютера. агр - манипулирует системным кэшем ARP. as - вызов мобильного ассемблера GNU. ascpu - монитор загрузки ЦП, входящий в состав менеджера окон AfterStep. ash - вызов оболочки. asload - монитор загрузки ЦП, входящий в состав менеджера окон AfterStep. at - планирует задания для последующего выполнения. atobm — утилита конвертирования для системы X Window. atq — выводит список заданий, поставленных в очередь командами at и batch. atrm - удаляет задания из очереди запланированных заданий. audiocompose - создает аудиофрагмент для включения в почтовое сообщение. audiosend - посылает звуковое сообщение по электронной почте. aumix - регулирует установки аудиомикшера. autof S - управляющий сценарий для автомонтирования. automount - конфигурирует точки монтирования для autofs. awk - см. команду gawk. bad blocks - поиск "плохих" блоков на диске. banner - вывод заголовка. basename - извлекает компоненты из полного имени файла, оставляя собственно имя файла. bash - осуществляет запуск оболочки, или командного процессора GNU Bourne-Again Shell.
Приложения о ■ -j batch - выполняет последовательность запланированных команд batcher - готовит пакеты новостей для указанного узла сети. вс - выполняет вычисления с произвольной точностью. bdf lush - демон ядра, сбрасывающий содержимое грязных буферов на диск. bdftopcf - конвертирует шрифты формата BDF в формат PCF. bQ - запускает прерванный процесс в фоновом режиме. bison - генерирует синтаксические анализаторы. bitmap - редактор монохромных растровых изображений в системе X window. bmptoppm - конвертирует BMP-файл Microsoft Windows или OS/2 в мобильный pixmap. bmtoa - утилита конвертирования для системы X Window. buffchan - буферизованный интерфейс для InterNetNews, осуществляющий запись в файлы. bunzip2 - производит распаковку файлов. bzcat - распаковывает файлы и выводит результаты на стандартный вывод. bzip2 - утилита упаковки файлов. bzip2recOver - восстанавливает информацию поврежденных архивных файлов, ранее упакованных утилитой bzip2. преобразует символы C++. выводит календарь. конкатенирует (объединяет) файлы и направляет их на стандартный вывод. СССР или срр - запуск препроцессора, используемого компилятором С перед компиляцией программы. Cdp - интерактивная программа для управления и воспроизведения аудио компакт-дисков под Linux. Cdrecord - выполняет запись информации или аудиоданных на компакт-диски. Chage - меняет информацию, связанную с паролем пользователя. Chat - автоматизирует взаимодействие компьютера с модемом. Chattr - меняет атрибуты файла второй расширенной файловой системы Linux. Chfn - меняет информацию о пользователе. Chgrp - переназначает группу для файлов и каталогов. Chkconf ig - управляет запуском системных служб и устанавливает уровень их ф> нк- ционироиания.
818 Приложения Chkfontpath - упрощенный интерфейс для добавления, удаления и просмотра каталогов со шрифтами по маршруту сервера шрифтов системы X. Chmod - меняет полномочия на файлы и каталоги. Chown - меняет владельца файла или каталога, а также группу, к которой он принадлежит. chroot - запускает программу или интерактивную оболочку, определив нестандартный корневой каталог системы. chsh - меняет оболочку, или командный процессор. ci - обновляет RCS-файл, создавая новые версии. Cksum - подсчитывает контрольную сумму и количество байт в файле. Clear - очищает экран вашего терминала. стр — сравнивает два файла. СО — проверяет RCS-версии. colcrt - фильтр, позволяющий просматривать на экране дисплея выходные файлы nroff. COlrm - удаляет столбцы из файла. column - форматирует вводимую информацию. Combine - создает комбинации изображений. COmm - выполняет построчное сравнение двух отсортированных файлов. сотр - создает сообщение для отправки по электронной почте. composite - создает смесь изображений. compress - сжимает (подвергает компрессии) данные. consolechars - загружает экранные шрифты для EGA/VGA консоли. convert - преобразует графические файлы одного формата в графические файлы такого же или другого формата. ср - копирует файлы. cpio - копирует файлы в архив и обратно. CprotO - генерирует прототипы функций языка С и преобразует определения ф> нк- ций. СГОП - демон, выполняющий запланированные команды. Crontab - обслуживает crontab-файлы пользователей, crosspost - создает ссылки на перекрестно отправляемые статьи, cryptdir - производит шифрование всех файлов заданного каталога, csplit - разбивает файл на части.
Приложения 01Q Ctags (etags) - генерирует файлы тегов для исходных кодов. Ctlinnd - управляет сервером InterNetNews. Ctrlaltdel - устанавливается последовательность действий, аналогичных тем, которые возникают при нажа тии клавиш Ctrl+AIt+Del. CU - устанавливает соединение с другой системой. cut - записывает на стандартный вывод выбранные части строк каждого заданного файла. CVS - осуществляет управление версиями. cvtbatch - конвертирует пакетные файлы Usenet в формат INN. схр m - осуществляет проверку файла формата ХРМ. date - распечатывает и устанавливает системную дату и время. d d - копирует файл, выполняя указанные преобразования. debugfs - отладчик файловой системы ext2. debugreiserfs - помогает разрешать проблемы, связанные с файловыми системами ReiserFS. decryptdir - выполняет дешифрирование всех файлов каталога. depmod - поддерживает описания зависимостей для загружаемых модулей ядра. df - выводит количество используемого и доступного дискового пространства в файловых системах. dialog — позволяет создавать диалоговые окна из сценариев оболочек. diff - сравнивает содержимое двух файлов. diff3 - производит сравнение трех файлов. dip - программа поддержки IP-подключений по телефонным каналам, display - выводит изображение на любой экран рабочей станции под Х-сервером. dist - пересылает сообщение по дополнительным адресам. dmesg - распечатывает сообщения, которые отображались в процессе начальной загрузки. dnsdomainname - выводит для текущего узла доменное имя DNS. domainname - устанавливает для текущего узла доменное имя службы NIS. du - выводит количество дискового пространства, используемого указанным файлом или каталогом. dump - создает резервную копию файловой системы ext2. dumpe2fs - выводит дамп, содержащий информацию о файловой системе. dumpkeys - выводит информацию о драйвере клавиатуры и о самой клавиатуре.
820 Приложения e2f sck - проверяет вторую расширенную файловую систему Linux. e2image - сохраняет в файле критичные данные файловой системы ext2/ext3. echo - записывает заданные строки на стандартный вывод. ed (red) - вызывает строковый редактор. edquota - редактирует пользовательские квоты. egrep - одна из разновидностей команды grep, работающая с расширенными регулярными выражениями. eject — "выбрасывает" носители информации из устройств. elm - интерактивная почтовая система. emacs - запускает известнейший редактор GNU Emacs. env - выполняет команду в измененном окружении. etags см. команду ctags. ex см. команду vim. expand - выводит содержимое указанных файлов, преобразуя символы табуляции в пробелы. expect - janycKaeT программируемый диалог с интерактивной программой. expire — программа, оформляющая удаление статей новостей Usenet с истекшим сроком хранения. expireindex - удаляет элементы из индекса обзора новостей. expireover - в связи с истечением срока хранения удаляет элементы из БД обзоров. expirerm - удаляет статьи с истекшим сроком хранения. ехрг - вычисляет выражение. fastmail — быстрый почтовый интерфейс в пакетном режиме. fastrm - служит для быстрого удаления набора файлов. fdformat - выполняет низкоуровневое форматирование гибких дисков. fdisk - манипулирует таблицей разделов жесткого диска для Linux. fetchmail (fetchmailconf) - выбирает почту с серверов POP, IMAP или ETRN. fetchmailconf см. команду fetchmail. f g - запускает прерванный процесс в режиме переднего плана. fgrep - одна из разновидностей поисковой команды grep. file - определяет тип указанного файла. filechan - буферизованный интерфейс для InterNetNcws, осуществляющий запись в файлы.
Приложения 891 find - производит поиск файлов в дереве каталогов. finger - программа получения информации о пользователе. flex - ускоренный генератор программ лексического анализа. f mt - форматирует текстовые файлы. fold - преобразует каждую входную строку файла в соответствии с указанной шириной. formail - форматирует (реформатирует) информацию в формат почтового ящика. forw - пересылает перепорученные сообщения. free - информирует об использовании памяти в системе. frm (nfrm) - выводит список тем и отправителей почтовых сообщений, находящихся в вашем почтовом ящике. f SCk - проверяет и исправляет файловую систему Linux. fsinfo - выводит информацию о сервере шрифтов системы X. fslsfonts - выводит список шрифтов, поддерживаемых сервером шрифтов системы X. fstobdf - преобразует шрифт, полученный с сервера шрифтов системы X, в BDF- формат. ftp (pftp) - программа передачи файлов в IP-сетях. ftpcount — показывает текущее количество пользователей FTP-сервера. ftpd — запускает демон Internet-сервера на протоколе FTP. ftpshut - закрывает FTP-сервер в указанное время. ftpwho - показывает текущий статус каждого FTP-пользователя. funzip - фильтр, используемый в конвейере, для извлечения компонентов из ZIP- архива. f user - идентифицирует процессы, использующие указанные файлы или сокеты. д++ см. команду gcc. gawk - GNU-версия языка программирования AWK. gcc (g++) - компилятор GNU языков программирования С н С++.^ gdb - вызывает отладчик GNU. gdm - менеджер дисплея GNOME. getf ilename - запрашивает у пользователя имя файла в заданном формате. getkeycodes - печатает таблицу соответствия скап-кодов клавиш их кодам. getlist - получаст один из списков от NNTP-ссрвера.
822 Приложения getty - устанавливает связь между Linux и указанным терминалом. gimp - вызывает одну из наиболее известных графических программ Linux. git - браузер файловой системы. g itaction - входит в состав GIT и выполняет определенное действие для каждого указанного файла. gitkeys - входит в состав GIT; выводит последовательность кодов клавиш клавиатуры gitmount - входит в состав GIT, позволяет монтировать любое блочно-специальное устройство. gitps - предназначена для вывода информации о процессах, а также может выдать сигнал об их завершении. gitrgrep - рекурсивная команда grep, входит в состав GIT. gitunpack - унифицированный распаковщик архивов, входящий в состав GIT. gitview - входит в состав GIT и предназначена для вывода содержимого файла в шестналцатеричном формате. gprof - определяет производительность программ на языке С, Pascal или Fortran 77. grep - печатает строки, совпавшие с шаблоном. grephistory - выводит имена файлов из файла history службы Usenet. grodvi - преобразует вывод groff в формат ТеХ. groff (nroff) - обеспечивает интерфейс для работы с системой форматирования groff. grolj4 - вызывает специальный groff-драйвер для принтеров семейства HP Laserjet 4. groupadd - создает новую группу пользователей. groupdel - удаляет группу. g roups - выводит список групп, членом которых является указанный пользователь. grpek - проверяет целостность файла групп. grpconv - оперирует обычными и теневыми файлами групп. grpunconv - оперирует обычными и теневыми файлами групп. gs - вызывает Ghostscript. gtk-config - позволяет получить информацию об инсталлированной версии GTK+. gurizip - распаковывает архивы, ранее созданные с помощью gzip или compress. gv - просматривает в X Window документы в формате PostScript и PDF. gview см. команду vim.
Приложения 823 gvim см. команду vim. gzexe - упаковывает исполняемые файлы. gzip - сжимает файлы. halt - останавливает систему. head - выводит начало файла. history - манипулирует протоколом команд. host - выводит информацию о заданном узле Internet, используя DNS. hostname - отображает информацию об имени текущего узла или устанавливает новые. httpd - запускает WEB-сервер Apache, hwclock - запрашивает и устанавливает аппаратные часы ЭВМ. id - печатает подлинные и действующие UID и GID. ident - идентифицирует в файлах ключевые строки RCS. identify - описывает характеристики и формат изображений. ^ ifconfig - конфигурирует сетевой интерфейс. imake - интерфейс препроцессора С к утилите make, import - выполняет захват изображений экранов Х-сервера. inetd - суперсервер, предназначенный для запуска служб Internet. inews - направляет статью локальному серверу новостей Usenet для последующего распространения. info - считывает документацию в гипертекстовом формате GNU texinfo на заданную тему или об указанной команде. j n it - инициализирует управление процессами. innd - демон InterNetNews. inndstart - упрощенный аналог innd. innfeed - осуществляет передачу новостей между компьютерами на протоколе NNTP. innstat - печатает дамп системы INN. innxmit - посылает статьи Usenet на дистанционный сервер NNTP. insmod - инсталлирует загружаемый модуль ядра. install - копирует файлы, устанавливая режимы доступа, а также владельца группу- ipchains выполняет администрирование Н'-брандмаучров.
824 Приложения ipchains-restore - восстанавливает со стандартного ввода цепочки 1Р-брандмауэра ipChains-save - выводит цепочки правил IP-брандмауэра на стандартный вывод ispell — интерактивный орфографический корректор. jobs - выводит список выполняемых или остановленных заданий. join - сливает строки двух файлов в общее поле. kbd_mode - выводит и устанавливает текущий режим драйвера клавиатуры. kbdconf ig - несложный интерфейс для конфигурирования системной клавиатуры. kbdrate - переустанавливает для клавиатуры скорость повтора и время задержки. kdm - менеджер дисплея KJDE. kill — завершает процессы. killall - завершает все процессы, запущенные указанной командой. ksyms - отображает экспортируемые символы (идентификаторы) ядра. kudzu - обнаруживает новые или замененные устройства в системе и конфигурирует их. last - отражает все происшедшие в системе регистрации. lastb - отражает все безуспешные регистрации. latex (tex) - позволяет создать форматированный текстовый файл, используя программу ТеХ и пакет макроопределений LaTeX. Id - компоновщик GNU. Idconfig - определяет связывание ссылок во время выполнения. Idd - распечатывает разделяемые библиотеки, необходимые каждой указанной программе. less - позволяет просматривать содержимое файла в прямом и обратном направлениях. lilo - инсталлирует загрузчик Linux. listres - отображает ресурсы виджета (widget). In - создает ссылки на файлы. loadkeys - загружает таблицы трансляции клавиатуры. locate (slocate) - запускает GNU-версию программы locate, обеспечивающую быстрый поиск файлов системы. lockfiie - создает файл-семафор. logger - создаст элементы в заданном системном журнале. login - регистрирует пользователей n I iniix.
Приложения О Л с logname - печатает имя пользователя, вызвавшего эту команду. logrotate - выполняет ротацию, сжимает и отправляет по почте системные журналы. look ^ - отображает строки, начинающиеся с указанных префиксов. losetup - связывает loop-устройства с обычными файлами или блочными устройствами. 1рс - управляет принтером. Ipd - демон построчной печати. 1рр - проверяет очередь печати. Ipr - передает задание принтеру, ставя его в очередь на печать. Iprm - удаляет задания из очереди печати. Is - выводит содержимое каталогов и информацию об указанных файлах. Isattr - печатает атрибуты файла второй расширенной файловой системы Linux, в том числе и ранее установленные chattr. Ismod - выводит список загружаемых модулей. Isof - составляет список открытых процессами файлов в системах Unix. Ispci - выводит информацию о всех РС1-устройствах. lynx - запускает браузер WWW. mail — посылает и получает почту. mailpost - подпитывает группу новостей почтовыми сообщениями. mailq см. команду sendmail. mailto - программа отправки мультимедийных почтовых сообщений. mailto-hebrew - отправляет электронную почту в смешанном формате Hebrew/English. make - утилита, управляющая группой файлов, на основе которых создается программа. makeactive - инструмент, который перекрывает существующий файл active для Usenet. makedepend - создает зависимости в make-файлах. makehistory - инструмент, вносящий поправки в БД history для Usenet. man - форматирует и выводит страницы руководства по операционной системе Linux. mc - запускает диспетчер файлов под названием Midnight Commander. mcookie - создает magic cookies (магические числа) для x.uith. md5sum - вычисляет и проверяет контрольную сумму, исполыуя алгоршм MDS.
826 Приложения merge - производит слияние изменений от двух файлов в третий. mesg — управляет доступом по записи к вашему терминалу. messages - подсчитывает количество сообщений в почтовом ящике или папке. metamail - инфраструктура для поддержки мультимедийных сообщений электронной почты. metasend - интерфейс для отправки нетекстовых данных в мультимедийных сообщениях электронной почты. mimencode - кодирует сообщения электронной почты в MIME-формат и декодирует их в оригинальный формат. minicom - дружественная коммуникационная программа. mkbootdisk — создает отдельную загрузочную дискету для запуска системы. mkdir - создает каталоги с указанными именами. mke2fs - создает вторую расширенную файловую систему Linux. mkfifo - создает FIFO. mkfontdir - создает в указанном каталоге индекс файлов-шрифтов системы X. mkfs - создает новую файловую систему Linux. mkfs.ext3 - создает файловую систему ext2/3. mkinitrd - создает образ начального псевдодиска (ramdisk) для предварительно загружаемых модулей. mkisofs - создает образ файловой системы для использования на CD-ROM. mknod - создает специальные файлы. mkreiserfs - создает в Linux файловую систему ReiserFS. mkswap - создает область своппинга в Linux. modinfo - выводит информацию о модуле ядра. modprobe - осуществляет высокоуровневое управление загружаемыми модулями. mogrify - трансформирует изображения или последовательность изображений. montage - выполняет монтаж изображения из других изображений. more - фильтр для вывода текста. mount - монтирует файловую систему. mountd см. команду rpc.mountd. msgfmt - создаст двоичные МО-файлы. msgmerge - выполняет слияние двух мобильных файлов в епше Uiiilorum.
Приложения 897 mt - управляет операциями на магнитной ленте, установленной на соответствующем устройстве. m v __- перемещает или переименовывает файлы или каталоги. named - запускает сервер службы доменных имен Internet. netcf g - помогает конфигурировать различные сетевые интерфейсы вашей системы на протоколе TCP/IP. netstat - проверяет состояние вашей сети. newaliases см. команду sendmail. newmail (wnewmail) - уведомляет о поступлении новой почты, news.daily - осуществляет регулярное системное администрирование в Usenet, newsrequeue - инструмент для перезаписи пакетных файлов службы новостей, nf rm см. команду frm. nfsd см. команду rpcnfsd. nfsstat - распечатывает статистику NFS. nice - печатает или модифицирует планируемый приоритет заданий. nl - нумерует строки файлов. nlmconv - преобразует объектный код в формат NLM. П m - распечатывает символы (идентификаторы) из объектных файлов. nnrpd - сервер NNTP для узлов учебных заведений. nntpsend- посылает статьи Usenet на дистанционный сайт. nohup - запускает указанную пользователем команду, которая будет выполняться даже и после выхода пользователя из системы. nroff - вызывает команду groff, которая эмулирует стандартную команду Umix под названием nroff. nslookup - опрашивает серверы имен доменов в Internet. ntsysv - конфигурирует уровни функционирования системных служб. objcopy - копирует и транслирует объектные файлы. objdump - выводит информацию из объектных файлов. od - выводит дамп файлов в восьмеричном или других форматах. overchan- обновляет базу обзоров новостей. passwd устанавливает пароль пользователя для входа в систему. paste выполняет слияние файлов. ^
OZo Приложения patch - накладывает "заплату", воплощающую отличия, на оригинальный файл, тем самым корректируя его. pathchk - проверяет корректность указанных имен файлов. pftp см. команду ftp. pidof - определяет идентификатор процесса работающей программы. pine (pinef) - программа поддержки электронной почты и новостей Internet. pinef см. команду pine. ping - отправляет пакеты ICMP на сетевые узлы. Pnews - публикует статьи новостей. portmap - программа-сервер, конвертирующая номера программ RPC в номера портов протокола DARPA. poweroff- отключает питание. р Г - подготавливает текстовые файлы для печати, форматируя их. printenv - печатает все или часть окружения. printmail - форматирует почту для последующей печати. procmail - автономный почтовый процессор. ps - выдает полный отчет о состоянии процессов. psfaddtabl - добавляет таблицу символов в формате Unicode к шрифтам консоли. psfgettable - выделяет в файле шрифтов консоли ранее включенную таблицу символов Unicode. psfstriptable - удаляет ранее включенную таблицу символов Unicode из файла шрифтов консоли. pullnews - "вытягивает" новости с одного компьютера и передает их другому. pwck - проверяет соответствие файлов /etc/passwd и /etc/shadow. pwconv — оперирует обычными и теневыми файлами паролей пользователей. pwd — печатает полное имя текущего каталога. pwunconv — оперирует обычными и теневыми файлами паролей пользователей. quota - отображает используемое дисковое пространство и лимиты. quotacheck - проверяет файловую систему на предмет использования диска. quotaoff - отключает использование квот для файловых систем. quotaon — включает использование квот для файловых систем. ranlib - формирует индекс для архива.
Приложения 829 Гагр - манипулирует системной таблицей RARP. ГС р - копирует файл в дистанционную систему и из нее res - меняет атрибуты RCS-файла. rcsclean - удаляет рабочие файлы RCS. rcsdiff - сравнивает версии RCS. rcsintro - введение в команды системы RCS. rcsmerge - выполняет слияние версий RCS. rdist - клиентская программа распределения дистанционных файлов. readelf - выводит информацию о файлах формата ELF. readmsg - извлекает сообщения из почтовой папки. reboot - перезагружает систему. reconfig - преобразует старый файл Xconfig в новый XF86Config. red см. команду cd. redhat-config-date - устанавливает системные дату и время, redhat-config-keyboard - конфигурирует^клавиатуру. redhat-config-network - конфигурирует ваш клиентский сетевой хост, redhat-config-securitylevel - создает сетевой заслон^ redhat-conf ig-services - управляет запуском системных служб и устанавливает уровень их функционирования. reiserfsck - проверяет в Linux файловую систему ReiserFS. reiserfstune - выполняет настройку журнала файловой системы ReiserFS^ renice - меняет приоритеты запущенных процессов. repquota- суммирует квоты по файловой системе. resize - устанавливает TERMCAP и терминальные установки, указывающие текущий размер окна xterm. restore - восстанавливает файл!, или файловые системы, ранее зарезервированные с помощью dump rev - выводит строки файла в обратном порядке. _ _ rgview см. команду vim. rgvim см. команду vim. richtext - позволяет просматривать почтовое сообщение в формате richtext. rlog - печатает информацию о RCS-файле. rlogin - разрешает пользователю зайти в дистанционную систему.
830 Приложения rm - удаляет файлы. rmdir - удаляет пустые каталоги. rmmod - выгружает загружаемые модули. rmt - программа, поддерживающая общение с дистанционным накопителем на магнитной ленте. rnews - принимает новости через UUCP-подключение. Rnmail - отвечает по электронной почте на статьи в группах новостей Usenet. route - отображает и манипулирует таблицей маршрутизации протокола IP. rpc.mountd (mountd) -демон монтирования NFS. rpc.nfsd (nfsd) - демон системы NFS. rpm - инсталлирует и управляет пакетами программного обеспечения. rsh - запускает на дистанционной системе оболочку для выполнения указанной команды. rstart - простейшая реализация клиента Remote Start (дистанционный старт). rsync - синхронизирует файлы. Шр - отображает итоговое состояние системы, состоящей из одного или более узлов локальной сети. ruptime - отображает состояние машин локальной сети. rusers - выводит список пользователей, зарегистрированных на машинах локальной сети. rview см. команду vim. rvim см. команду vim. rwho - показывает, кто зарегистрировался на машинах локальной сети. sal - накапливает и хранит двоичные данные в файле учетных записей ежедневной жизнедеятельности системы. sa2 - записывает ежедневный отчет о жизнедеятельности системы. sadC - конечный интерфейс к команде sar. sar - накапливает, сообщает и сохраняет информацию о деятельности системы. scanlogs - подводит итоги по записям журналов rNN. Sep - безопасно копирует дистанционные файлы. script - выполняет копию содержимого экрана терминала во время сеанса. sdiff - находит разницу между содержимым двух файлов и воплощает се в третьем файле.
Приложения ОТ | sed - потоковый редактор. sendmail(newaliases.mailq)-транспортный агент электронной поч1ы. service - управляет запуском служб. setkeycodes - загружает элементы таблицы отображения скан-кодов в коды клавиш. setserial - отображает характеристики последовательного порта и конфигурирует его. shlock - создает lock-файлы для использования в сценариях оболочек. showaudio - воспроизводит звуковое сообщение электронной почты. showexternal - выбирает и отображает тело почтового сообщения, включенного с помощью ссылки. showkey - печатает на стандартный вывод или код, или символ каждой нажатой клавиши. showmount - выводит информацию о подключениях к серверу NFS. shownonascii - выводит все или часть сообшения электронной почты не в ASCII-шрифте. showpartial - собирает по частям большое сообщение MIME-формата. showpicture - выводит изображение, полученное по электронной почте. showrgb - декомпилирует БД RGB-имен. shrinkfile - усекает файл по линии границы. shutdown - завершает работу системы. size - сообщает информацию о размерах секций и общих размерах объектных файлов. sleep - задает задержку прежде, чем выполнять следующую команду. slocate см. команду locate. sort - сортирует строки текстовых файлов. source (.) - считывает и выполняет команды из указанного файла в окружении текущей оболочки. split - делит файл на части. splitmail - делит большое почтовое сообщение на несколько сообщений в MIME- формате. ssh - клиент SSH для регистрации пользователей и выполнения команд на дистанционной машине. SSh-keygen - генерирует и управляет ключами аутентификации. _ startinnfeed - запускает innfeed, установив для нес при этом sctuid суперпользовато-
832 Приложения StartX - инициализирует сеанс системы X. Stat - распечатывает содержимое полей дескриптора файла. Statserial - предоставляет информацию о последовательных портах. strace - трассирует системные вызовы и сигналы. Strip - отбрасывает из объектного файла все идентификаторы. Stty - выводит и изменяет установки терминала. SU — позволяет одному пользователю временно стать другим пользователем. Slido - выполняет команды с привилегиями других пользователей. sum - подсчитывает контрольную сумму и количество блоков в файле. SuperProbe - распознает, идентифицирует и опробует установленное видеооборудование компьютера. swapoff - запрещает применять указанные устройства или файлы в качестве области своппинга. Swapon - разрешает применять указанные устройства или файлы в качестве области своппинга. Sync - сбрасывает буфера файловой системы. sysctl - настройка параметров ядра во время выполнения. tac - конкатенирует и печатает файлы в обратном порядке. tail - выводит конечные элементы файлов. talk - позволяет вести переговоры с другим пользователем. tar - утилита архивации. tepdump- анализирует сетевой трафик. tee - одновременно копирует стандартный ввод на стандартный вывод и еще в некоторые файлы. telnet - интерфейс пользователя к протоколу TELNET. telnetd - программа-сервер, поддерживающая интерактивный протокол коммуникаций DARPA TELNET. tex см. команду latex. tjme - подсчитывает использование системных ресурсов заданной командой. tin - программа чтения новостей Usenet. top - выполняет мониторинг и управление процессами. touch - меняет время доступа и/или модификации указанных файлов. tr - выполняет преобразование текстового файла.
Приложения traceroute - обнаруживает неполадки маршру! изации. trn - позволяет читать новости Usenet по цепочке. trof f - форматирует тексты для печати. tty - печатает имя файла терминала, подключенного в качестве стандартного ввода. tune2fs - выполняет регулировку настраиваемых параметров второй расширенной файловой системы Linux. umount - демонтирует файловые системы. unalias - удаляет псевдоним команды. uname - информирует о компьютере и операционной системе, запущенной на нем. uncompress - распаковывает сжатые файлы. uniq - удаляет дублирующиеся строки из отсортированного файла. unzip - распечатывает, тестирует и извлекает сжатые файлы из ZIP-архива, созданного также и под другими операционными системами. Uptime - выводит информацию о работе системы. useradd - открывает счет для нового пользователя или меняет информацию о пользователе, заданную по умолчанию. userdel - удаляет счет пользователя из системы. users — выводит список пользователей, зарегистрировавшихся в настоящий момент в системе. Uudecode - декодирует файл, созданный с помощью uuencode. Uuencode - кодирует бинарный (двоичный) файл. UUidgen - создает новый UUID. view см. команду vim. vim (ex, view, gvim, gview, rvim, rview, rgvim. rgview) - текстовый редактор, visudo - редактирует конфигурационный файл sudoers. ■ выдает статистику по виртуальной памяти, показывает, кто зарегистрирован в системе и чем занят. wall - посылает сообщение на любой терминал. WC - подсчитывает слова, символы или строки в одном или более файлах. Which - отображает полный маршрут к указанной команде, who - сообщает о пользователях, зарегистрировавшихся в настоящее время, whois - осуществляет поиск официальной контактной информации из ра{личных авгоритстпых источников.
834 Приложения wnewmail см. команду netrmail. write - посылает сообщение другому пользователю. writelog - добавляет элемент в журнал 1NN. X - мобильная и позволяющая работать в сети оконная система. xbiff — уведомляет о поступлении новой почты. XClipboard - накапливает и отображает содержимое CLIPBOARD (буфера обмена). xdm - менеджер дисплея X Window, управляющий сеансами на локальных и дистанционных системах. xev - отображает суть событий системы X. xf 86conf ig - создает файл конфигурации XF86Config. xfd — выводит все символы указанного шрифта системы X в виде таблицы. xf S - запускает сервер шрифтов системы X. xgettext - из заданных входных файлов извлекает строки, которые должны переводиться (в целях интернационализации или локализации). xhost - управляет доступом к Х-сервсру. xinit — инициализирует X Window. xlsclients — выводит список клиентских приложений X, запущенных на дисплее. xlsfonts — выводит список шрифтов сервера шрифтов. xmag - увеличивает части X экрана. xm h - отправляет и читает электронную почту. xmkmf - создает Makefile из Imakefile. xmodmap - позволяет менять раскладку клавиатуры и кнопок мыши в X Window. хоп — запускает Х-программу на дистанционной машине. xpaint - несложная программа рисования. xpmrOOt - выводит в основном окне текущего Х-дисплея изображение в формате ХРМ. xrdb - утилита БД ресурсов Х-сервера. xrefresh — обновляет весь экран или его часть. Xserver - сервер дисплея системы X Window. xset - выполняет настройку параметров системы X Window. xsetroot - меняет наст ройки главного окна X. xterm - эмулирует терминал в системе X. xwd создает дамп изображения и сохраняет его и файле.
Приложения 835 xwdtopnm - конвсршрует дамп окна X11 или X10 в переносимый формат XWininfo — вывод информации об окнах системы X. xwud - выводит изображение, ранее сохраненное командой xwd xxgdb графический интерфейс пользователя к отладчику gdb. yes - автоматизирует процесс создания многократных ответов на запросы других программ. zcat распаковывает архивы, созданные gzip и compress. zemp сравнивает содержимое упакованных (сжатых) файлов. Zdiff сравнивает содержимое упакованных файлов. zforce - добавляет к именам файлов, созданных с помощью gzip, расширение .gz. zgrep - производит поиск по шаблону строк файлов в gzip-архивах. zipgrep - производит поиск строк файлов, соответствующих шаблону, в ZIP-архи- вах. zipinf о - сообщает детальную информацию о ZIP-архиве. zmore - отображает текст упакованных файлов. znew - переупаковывает файлы формата .Z в формат .gz. . (точка) - считывает и выполняет команды из указанного файла в окружении текущей оболочки.
С.Л. Скловская I Команды Справочник, третье издание, переработанное и дополненное Platinum Edition йЯ£ %-j SuSE \ чСНПЖ da f I ''*' «*a» altf^l * linuxl 4- mux I 'W (- & ^^ издательство Ж DiaSoft ISBN 5-93772-113-6 78593711721 136