<b>Отладка</b>
<br />
<table border="1" width="100%">
<tr>
<td width="50%">cat -v -t -e [file]</td><td>Показать неотображаемые символы</td>
</tr>
<tr>
<td>dumpadm -d swap</td>
<td>Сконфигурировать swap устройство как dump устройство</td>
</tr>
<tr>
<td>ld -l <libname without 'lib'></td>
<td>Проверка наличия библиотеки</td>
</tr>
<tr>
<td>truss -f -p <pid of a shell></td><td>Использование нескольких окон. Это может использоваться при отслеживании setuid/setgid программ</td>
</tr>
<tr>
<td>truss executable</td>
<td>Отслеживание команды (полезно при отладке)</td>
</tr>
</table><br />
<b>Работа с диском</b>
<br />
<table border="1" width="100%">
<tr>
<td width="50%">/bin/mount -F hsfs -o ro /dev/sr0 /cdrom</td><td>Монтирование ISO 9660 CDROM</td>
</tr>
<tr>
<td>/usr/bin/iostat -E</td>
<td>Отображение статистики дисков</td>
</tr>
<tr>
<td>du -ad /var | sort -nr</td>
<td>Отчет об использовании /var сортированный в обратном порядке</td>
</tr>
<tr>
<td>du -k .</td><td>Отчет об использовании диска в килобайтах</td>
</tr>
<tr>
<td>du -sk * | sort -nr | head</td>
<td>Показать 10 самых больших файлов/каталогов</td>
</tr>
<tr>
<td>du -sk *|sort -k1,1n</td>
<td>Отчет об использованном пространстве в текущем каталоге</td>
</tr>
<tr>
<td>du -sk .</td><td>Отчет об общем использовании диска в килобайтах</td>
</tr>
<tr>
<td>fdformat -d -U</td>
<td>Форматирование дискеты</td>
</tr>
<tr>
<td>newfs -Nv /dev/rdsk/c0t0d0s1</td>
<td>Просмотр доступных суперблоков</td>
</tr>
<tr>
<td>prtvtoc /dev/rdsk/c0t0d0s2</td><td>Информация о геометрии и разделах диска</td>
</tr>
<tr>
<td>prtvtoc /dev/rdsk/c0t0d0s2 | fmthard -s - /dev/rdsk/c0t1d0s2</td>
<td>Копировать таблицу разделов с одного диска на другой</td>
</tr>
<tr>
<td>quot -af</td>
<td>Сколько дискового пространства используется пользователем</td>
</tr>
<tr>
<td>volrmmount -i floppy</td><td>Монтирование дисковода или другого устройства просто по его имени</td>
</tr>
</table>
<br />
<b>Параметры ядра</b>
<br />
<table border="1" width="100%">
<tr>
<td width="50%">ndd /dev/ip ip_forwarding</td>
<td>Показать переменную ip_forwarding в ядре</td>
</tr>
<tr>
<td>ndd /dev/ip ip_forwarding 1</td><td>Установить переменную ip_forwarding в ядре</td>
</tr>
<tr>
<td>ndd /dev/ip \?</td>
<td>Показать все IP переменные в ядре</td>
</tr>
</table>
<br />
<b>Управление файлами</b>
<br />
<table border="1" width="100%">
<tr>
<td width="50%">dos2unix | -ascii <filename></td><td>Конвертировать файлы формата DOS в формат Unix</td>
</tr>
<tr>
<td>fold -w 180</td>
<td>Удалить строки с больше чем 180 символов</td>
</tr>
<tr>
<td>split [-linecount] [file]</td>
<td>Разбить файл на части</td>
</tr>
<tr>
<td>[vi] : %s/existing/new/g</td><td>Поиск и замена текста в vi</td>
</tr>
<tr>
<td>[vi] :set list</td>
<td>Показать неотображаемые символы в vi</td>
</tr>
<tr>
<td>[vi] :set nu</td>
<td>Пронумеровать строки в vi</td>
</tr>
<tr>
<td>[vi] :set ts=[num]</td><td>Установить значение табуляции в vi</td>
</tr>
</table><br />
<b>Файловая система</b>
<br /><table border="1" width="100%">
<tr>
<td width="50%">/sbin/uadmin x x</td>
<td>Синхронизация файловых систем и быстрая перезагрузка</td>
</tr><tr>
<td>awk ' END {print NR}' file_name</td>
<td>Вывести количество строк в файле</td>
</tr>
<tr>
<td>cat /dev/null > filename</td>
<td>Нулевой вывод в файл без прерывания пайпа</td>
</tr>
<tr>
<td>dd if=/dev/rdsk/... of=/dev/rdsk/... bs=4096</td>
<td>Сделать зеркало загрузочного диска</td></tr>
<tr>
<td>df -k | grep dg| awk '{print $6}' |xargs -n 1 umount</td>
<td>Отмонтировать все файловые системы в группе дисков dg</td>
</tr>
<tr>
<td>fsck -F ufs -o b=97472 /dev/rdsk/c0t0d0s0</td>
<td>Проверить и восстановить файловую систему UFS на c0t0d0s0 используя альтернативные суперблоки</td>
</tr>
<tr>
<td>fsck -F ufs -y /dev/rdsk/c0t0d0s0</td>
<td>Восстановить файловую систему UFS на c0t0d0s0 без подтверждения</td></tr>
<tr>
<td>fsck -F ufs /dev/rdsk/c0t0d0s0</td>
<td>Проверить файловую систему UFS на c0t0d0s0</td>
</tr>
<tr>
<td>gzip -d -c tarball.tgz | (cd /[dir];tar xf - ) &</td>
<td>Распаковка архива в указанное место</td>
</tr>
<tr>
<td>gzip -dc file1.tar.gz | tar xf -</td>
<td>Распаковка архива</td></tr>
<tr>
<td>ln [-fhns] <source file> <destination file></td>
<td>Создать жесткую или мягкую ссылку</td>
</tr>
<tr>
<td>ls -al | awk '$3 == "oracle" || $3 == "root" {print $9}'</td>
<td>Вывод всех файлов, владельцем которых является </td>
</tr>
<tr>
<td>ls -l | sort +4n</td><td>Список файлов по размеру</td>
</tr>
<tr>
<td>ls -la | awk '{ print $5," ",$9 }' | sort -rn</td>
<td>Размер файлов в текущем каталоге</td>
</tr>
<tr>
<td>ls -lR | awk '{total +=$5};END {print "Total size: " total/1024/1024 "MB" }'</td>
<td>Рекурсивный подсчет размера каталогов в Мб</td>
</tr>
<tr>
<td>mkisofs -l -L -r -o [image-name].iso [directory]</td><td>Создать образ ISO из каталога</td>
</tr>
<tr>
<td>mount -F ufs -o rw,remount /</td>
<td>Перемонтировать корневой раздел в rw</td>
</tr>
<tr>
<td>mount -o remount,logging /spare</td>
<td>Перемонтировать ro в rw aи включить журналирование ufs</td>
</tr>
<tr>
<td>mount -f pcfs /dev/dsk/c0d0p1 /export/dos</td><td>Примонтировать раздел DOS</td>
</tr>
<tr>
<td>mv [filename]{,.new_suffix}</td>
<td>Переименовать файл</td>
</tr>
<tr>
<td>pax -rw . /newdir</td>
<td>Альтернативный метод копирования каталогов</td>
</tr>
<tr>
<td>prtvtoc /dev/rdsk/c0t0d0s2 | fmthard -s - /dev/rdsk/c0t1d0s2</td><td>Клонировать таблицу разделов</td>
</tr>
<tr>
<td>tar cf - . | (cd /newdir ; tar xf -)</td>
<td>Рекурсивное копирование файлов и разрешенй</td>
</tr>
<tr>
<td>tar cvf filename.tar</td>
<td>Создать архив</td>
</tr>
<tr>
<td>tar xvf filename.tar</td><td>Распаковать архив</td>
</tr>
<tr>
<td>X=$(wc -l < filename); echo $X</td>
<td>Подсчет количества строк в файле (ksh)</td>
</tr>
<tr>
<td>zcat <patch_file.tar.Z | tar xvf -</td>
<td>Распаковка patch_file</td>
</tr>
<tr><td>zcat [cpio file] | cpio -itmv</td>
<td>Показать содержимое cpio</td>
</tr>
</table><br />
<b>Передача файлов</b>
<br /><table border="1" width="100%">
<tr>
<td width="50%">find . -depth | cpio -pdmv /path/tobe/copied/to</td>
<td>Быстрая альтернатива cp -pr</td></tr>
<tr>
<td>find . -follow | cpio -pdumL /path/tobe/copied/to</td>
<td>Копирование с символическими ссылками</td>
</tr>
<tr>
<td>get filename.suffix |"tar xf -"</td>
<td>Недокументированная возможность FTP</td>
</tr>
<tr>
<td>ssh cd /some/directory \&\& tar cf - | ssh cd /some/direstory \&\& tar xvf - </td><td>Переместить файлы без фактического обращения к ним</td>
</tr>
<tr>
<td>put "| tar cf - ." filename.tar</td>
<td>Недокументированная возможность FTP</td>
</tr>
<tr>
<td>sendport</td>
<td>Команда FTP, служащая для передачи большого количества файлов в пределах одной сессии</td>
</tr>
</table><br />
<b>Общие</b>
<br /><table border="1" width="100%">
<tr>
<td width="50%">/bin/printf '%d\n' '0x<hex>'</td>
<td>Преобразование шестнадцатеричного числа в десятичное</td>
</tr>
<tr>
<td>/usr/bin/catman -w</td>
<td>Создать индекс базы данных страниц руководства man</td></tr>
<tr>
<td>FQ_FILENAME=<fully_qualified_file_name>; echo ${FQ_FILENAME%/*}</td>
<td></td>
</tr>
<tr>
<td>mailx -H -u <username></td>
<td>Список заголовков писем конкретного пользователя</td>
</tr>
<tr>
<td>ps -ef | grep -i $@</td>
<td></td></tr>
<tr>
<td>set filec</td>
<td>Установить автодополнение имен файлов для csh</td>
</tr>
<tr>
<td>uuencode [filename] [filename] | mailx -s "Subject" [user to mail]</td>
<td>Послать файл в аттаче</td>
</tr>
<tr>
<td>xauth -f /home/${LOGNAME} extract - ${DISPLAY} | xauth merge -</td>
<td></td></tr>
</table><br />
<b>Аппаратное обеспечение</b>
<br /><table border="1" width="100%">
<tr>
<td width="50%">cfgadm</td>
<td>Проверить конфигурирумые аппаратные устройства</td>
</tr>
<tr>
<td>m64config -depth 8|24</td><td>Установить глубину цвета M64</td>
</tr>
<tr>
<td>m64config -prconf</td>
<td>Вывести конфигурацию адаптера M64</td>
</tr>
<tr>
<td>m64config -res 'video_mode'</td>
<td>Изменить разрешение графического адаптера M64</td>
</tr>
<tr>
<td>prtpicl -v | grep sync-speed</td><td>Обзор скорости синхронизации SCSI</td>
</tr>
</table><br />
<b>Ядро</b>
<br /><table border="1" width="100%">
<tr>
<td width="50%">/usr/sbin/modinfo</td>
<td>Информация о модулях ядра</td>
</tr><tr>
<td>/usr/sbin/modload <module></td>
<td>Загрузить модуль ядра</td>
</tr>
<tr>
<td>/usr/sbin/modunload -i <module id></td>
<td>Выгрузить модуль ядра</td>
</tr>
<tr>
<td>/usr/sbin/sysdef</td>
<td>Детальный вывод настройки ядра</td></tr>
<tr>
<td>nm -x /dev/ksyms | grep OBJ | more</td>
<td>Настраиваемые параметры ядра</td>
</tr>
</table><br />
<b>Память</b>
<br /><table border="1" width="100%">
<tr>
<td width="50%">pagesize -a</td><td>Доступный размер страницы для Solaris 9</td>
</tr>
<tr>
<td>prtconf | grep Mem</td>
<td>Вывод размера памяти на локальной машине</td>
</tr>
</table><br />
<b>Информация о сети</b>
<br /><table border="1" width="100%">
<tr>
<td width="50%">arp -a</td>
<td>Вывод arp таблицы</td>
</tr>
<tr>
<td>arp -d myhost</td>
<td>Удалить запись определенного хоста из таблицы</td>
</tr>
<tr>
<td>lsof -iTCP@10.20.2.9
</td>
<td>Отобразить открытые файлы для определенного хоста</td>
</tr>
<tr>
<td>ndd /dev/arp arp_cache_report</td>
<td>Напечатать arp таблицу выводя mac и IP адреса</td>
</tr>
<tr>
<td>netstat -a | grep EST | wc -l</td>
<td>Показать число активных подключений к данной машине</td>
</tr>
<tr>
<td>netstat -a | more</td><td>Показать состояние сокетов на этой машине</td>
</tr>
<tr>
<td>netstat -i</td>
<td>Показать состояние TCP/IP интерфейсов</td>
</tr>
<tr>
<td>netstat -k hme0</td>
<td>Недокументированная опция netstat</td>
</tr>
<tr>
<td>netstat -np</td><td>Аналог команды arp -a, без разрешения имен</td>
</tr>
<tr>
<td>netstat -r</td>
<td>Таблица маршрутов</td>
</tr>
<tr>
<td>netstat -rn</td>
<td>Таблица маршрутов, без разрешениия имен</td>
</tr>
<tr>
<td>snoop -S -ta [machine]</td><td>Прослушивание сетевых пакетов, включая размер и время</td>
</tr>
<tr>
<td>traceroute <ipaddress></td>
<td>Маршрут к данному адресу</td>
</tr>
</table><br />
<b>Настройка сети</b>
<br /><table border="1" width="100%">
<tr>
<td width="50%">/sbin/ifconfig hme0:1 inet 10.210.xx.xxx netmask 255.255.0.0 broadcast 10.210.xxx.xxx</td>
<td>Виртуальный интерфейс</td>
</tr>
<tr>
<td>/sbin/ifconfig hme0:1 up</td>
<td>Поднять виртуальный интерфейс</td>
</tr>
<tr>
<td>/usr/sbin/ndd -set /dev/hme adv_100fdx_cap 1</td>
<td></td>
</tr><tr>
<td>ifconfig eth0 10.1.1.1 netmask 255.255.255.255</td>
<td>Добавить интерфейс</td>
</tr>
<tr>
<td>ifconfig eth0 mtu 1500</td>
<td>Сменить MTU на интерфейсе</td>
</tr>
<tr>
<td>ndd -set /dev/ip ip_addrs_per_if 1-8192</td>
<td>Задать больше, чем 256 виртуальных IP адресов</td></tr>
<tr>
<td>ndd -set /dev/tcp tcp_recv_hiwat 65535</td>
<td>Увеличить TCP буфер приема на Sol2.5.1 с 100BaseTx</td>
</tr>
<tr>
<td>ndd -set /dev/tcp tcp_xmit_hiwat 65535</td>
<td>Увеличить TCP буфер передачи на Sol2.5.1 с 100BaseTx</td>
</tr>
</table><br />
<b>Процессы</b><br />
<table border="1" width="100%">
<tr>
<td width="50%">/usr/proc/bin/ptree <pid></td>
<td>Вывести дерево родителя/детей для процесса</td>
</tr>
<tr>
<td>/usr/proc/bin/pwdx <pid></td>
<td>Вывести рабочий каталог процесса</td>
</tr>
<tr>
<td>/usr/ucb/ps -aux | more</td><td>Отобразить использование CPU % для каждого процесса</td>
</tr>
<tr>
<td>/usr/ucb/ps -auxww | grep <process name></td>
<td>Получить полный список процессов (очень длинный)</td>
</tr>
<tr>
<td>fuser -uc /var</td>
<td>Процессы, запущенные из /var </td>
</tr>
<tr>
<td>ipcs</td><td>Отчет о межпроцессных взаимодействиях</td>
</tr>
<tr>
<td>kill -HUP `ps -ef | grep [p]roccess | awk '{print $2}'`</td>
<td>Послать всем связанным процессам сигнал HUP за один раз</td>
</tr>
<tr>
<td>lsof -i TCP:25</td>
<td>Соотнести порт с приложением</td>
</tr>
<tr>
<td>pfiles <pid></td><td>Показать файлы, открытые процессом</td>
</tr>
<tr>
<td>pkill -n <name></td>
<td>Убить процесс с определенным именем</td>
</tr>
<tr>
<td>prstat -a</td>
<td>Альтернатива команде top</td>
</tr>
<tr>
<td>ps -edf -o pcpu,pid,user,args</td><td>Форматированый вывод 'ps'</td>
</tr>
<tr>
<td>ps -ef | grep -i <string> | awk '{ print $2 }'</td>
<td>Создать список PID содержащих <string></td>
</tr>
<tr>
<td>ps -ef | grep <process name> | grep -v grep | cut -c 10-15 | xargs kill -9</td>
<td>Найти и убить процесс</td></tr>
<tr>
<td>ps -ef | more</td>
<td>Показать все запущенные процессы</td>
</tr>
<tr>
<td>ps -ef|grep -v "0:00"|more</td>
<td>Получить список любого процесса с процессорным временем больше чем 0:00</td>
</tr>
<tr>
<td>ps -eo pid,args</td>
<td>Список процессов в простом формате</td></tr>
<tr>
<td>ps -fu oracle|grep pmon</td>
<td>Посмотреть, какие инстансы Oracle запущены</td>
</tr>
<tr>
<td>top -b 1</td>
<td>Отобразить наиболее прожорливый процесс и выйти</td>
</tr>
</table><br />
<b>Управление ресурсами</b><br />
<table border="1" width="100%">
<tr>
<td width="50%">/usr/bin/ldd [filename]</td>
<td>Список динамических зависимостей выполняемого файла</td>
</tr>
<tr>
<td>/usr/proc/bin/pmap pid</td>
<td>Отчет о карте адресного пространства процесса</td>
</tr>
</table><br />
<b>Маршрутизация</b>
<br /><table border="1" width="100%">
<tr>
<td width="50%">route add net 128.50.0.0 128.50.1.6 1</td>
<td>Добавить маршрут</td>
</tr>
<tr>
<td>route change 128.50.0.0 128.50.1.5</td>
<td>Сменить маршрут</td></tr>
<tr>
<td>route delete net 128.50.0.0 128.50.1.6</td>
<td>Удалить маршрут</td>
</tr>
<tr>
<td>route flush</td>
<td>Очистить таблицу маршрутов. Удаляются все записи</td>
</tr>
<tr>
<td>route get [hostname]</td>
<td>Определить интерфейс, используемый для доступа к удаленному хосту</td></tr>
<tr>
<td>route monitor</td>
<td>Мониторинг таблицы маршрутов</td>
</tr>
</table><br />
<b>Поиск</b>
<br /><table border="1" width="100%">
<tr>
<td width="50%">egrep "patterna|patternb" <filename></td><td>Поиск нескольких шаблонов в одном файле</td>
</tr>
<tr>
<td>find <start_path> -name "<file_name>" -exec rm -rf {} \;</td>
<td>Рекурсивный поиск файлов по имени и их удаление</td>
</tr>
<tr>
<td>find . -type f -print | xargs grep -i [PATTERN]</td>
<td>Рекурсивный grep в файле</td></tr>
<tr>
<td>find . ! -mtime -<days> | /usr/bin/xargs rm -rf</td>
<td>Найти и удалить файлы старше <days></td>
</tr>
<tr>
<td>find . -exec egrep -li "str" {} \;</td>
<td>Поиск строк в файлах, начинающихся с cwd</td>
</tr>
<tr>
<td>find . -mtime -1 -type f</td><td>Поиск недавно измененных файлов</td>
</tr>
<tr>
<td>find . -type f -exec grep "<sub-string>" {} \; -print</td>
<td>Искать файлы, содержащие <sub-string> в пределах дерева каталогов</td>
</tr>
<tr>
<td>find ./ \! -type f -exec ls -l {} \;|grep -v '^[l|p|s|-]'|grep -v 'total' | wc -l</td>
<td>Посчитать число подкаталогов в каталоге</td></tr>
<tr>
<td>find / -fstype nfs -prune -o fstype autofs -prune -o -name filename -print</td>
<td>Поиск вне файловых систем nfs</td>
</tr>
<tr>
<td>find / -mtime <# of days></td>
<td>Найти файлы, модифицированные # дней назад</td>
</tr>
<tr>
<td>find / -perm -2 -a ! -type l</td><td>Найти файлы, доступные на запись 'others'</td>
</tr>
<tr>
<td>find / -type f |xargs ls -s | sort -rn |more</td>
<td>Список файлов, занимающих много дискового пространства</td>
</tr>
<tr>
<td>find / -user <username></td>
<td>Найти все файлы, принадлежащие <username></td>
</tr>
<tr>
<td>find / | grep [file mask]</td><td>Быстрый способ найти файл</td>
</tr>
<tr>
<td>find /proc/*/fd -links 0 -type f -size +2000 -ls</td>
<td>Поиск больших файлов, которые были удалены или перемещены, но остались открыты каким-либо процессом</td>
</tr>
<tr>
<td>grep <full_path_to_filename> /var/sadm/install/contents| awk '{ print $1 ' ' $10 }'</td>
<td>Найти какому пакету принадлежит файл</td>
</tr><tr>
<td>ls -lR | grep <sub_string></td>
<td>Быстрая альтернатива find</td>
</tr>
</table><br />
<b>Безопасность</b>
<br /><table border="1" width="100%">
<tr>
<td width="50%">crypt <abc.cr> abc && rm abc.cr</td><td>Дешифрация файла с помощью crypt</td>
</tr>
<tr>
<td>crypt <abc> abc.cr && rm abc</td>
<td>Шифрация файла с помощью crypt</td>
</tr>
<tr>
<td>echo 'Please go away' > /etc/nologin</td>
<td>Прекратить вход пользователей в систему</td></tr>
<tr>
<td>find / -perm -0777 -type d -ls</td>
<td>Найти все каталоги на запись</td>
</tr>
<tr>
<td>find / -type f -perm -2000 -print</td>
<td>Найти все SGID файлы</td>
</tr>
<tr>
<td>find / -type f -perm -4000 -print</td>
<td>Найти все SUID файлы</td></tr>
<tr>
<td>trap 'exit 0' 1 2 3 9 15</td>
<td>Перехват специального сигнала и выход</td>
</tr>
<tr>
<td>vi -x [filename]</td>
<td>Зашифровать файл с помощью vi</td>
</tr>
</table><br />
<b>Установки терминала</b><br />
<table border="1" width="100%">
<tr>
<td width="50%">stty erase ^?</td>
<td>Для удаления символа использовать клавишу delete </td>
</tr>
<tr>
<td>stty erase ^H</td>
<td>Для удаления символа использовать клавишу backspace</td>
</tr>
<tr>
<td>stty sane</td><td>Перезапустить терминал после просмотра бинарного файла</td>
</tr>
<tr>
<td>tput rmacs</td>
<td>Перезагрузить стандартный набор символов</td>
</tr>
</table><br />
<b>Snoop</b>
<br /><table border="1" width="100%">
<tr>
<td width="50%">snoop -d pcelx0</td>
<td>Просматривать все пакеты на устройстве</td>
</tr>
<tr>
<td>snoop -i /tmp/mylog -o /tmp/newlog host1</td>
<td>Все пакеты с host1 записывать в лог</td>
</tr>
<tr>
<td>snoop -i /tmp/mylog -v -p101</td>
<td>Показать отладочную информацию по пакету 101 из лога</td></tr>
<tr>
<td>snoop -i /tmp/mylog host1 host2</td>
<td>Просмотреть лог на предмет пакетов между hosts1 и host2</td>
</tr>
<tr>
<td>snoop -o /tmp/mylog pcelx0</td>
<td>Сохранить все пакеты с устройства в лог</td>
</tr>
<tr>
<td>snoop -s 120</td>
<td>Отобразить первые 120 байт заголовка пакета</td></tr>
<tr>
<td>snoop -v arp</td>
<td>Захват широковещательных пакетов arp в вашей сети</td>
</tr>
<tr>
<td>snoop port [port-number]</td>
<td>Монитроинг конкретного порта</td>
</tr>
</table><br />
<b>Файлы swap</b>
<br /><table border="1" width="100%">
<tr>
<td width="50%">mkfile -nv 10m /export/disk1/myswap</td>
<td>Создает пустой 10-и мегабайтный свап-файл в /export/disk1</td>
</tr>
<tr>
<td>mkfile -v 10m /export/disk1/myswap</td>
<td>Создает файл подкачки на 10 мегабайтов в /export/disk1</td>
</tr></table>
<br />
<b>Пространство swap</b>
<br />
<table border="1" width="100%">
<tr>
<td width="50%">swap -a /export/disk1/swapfile</td>
<td>Добавить своп-файл</td>
</tr>
<tr>
<td>swap -d /dev/dsk/c0t0d0s4</td>
<td>Удалить свап-устройство</td></tr>
<tr>
<td>swap -l</td>
<td>Вывести список текущих свап-устройств</td>
</tr>
<tr>
<td>swap -s</td>
<td>Вывод доступного пространства</td>
</tr>
</table>
<br />
<b>Конфигурация системы</b><br />
<table border="1" width="100%">
<tr>
<td width="50%">/usr/sbin/eeprom auto-boot? false</td>
<td>Изменить переменную autoboot? таким образом, чтобы система загружалась только после подтверждения</td>
</tr>
<tr>
<td>/usr/sbin/eeprom diag-switch? true</td>
<td>Провести диагностику во время следующей загрузки</td>
</tr>
<tr>
<td>/usr/sbin/eeprom local-mac-address?=true</td><td>Настройка многопортовой сетевой карты</td>
</tr>
<tr>
<td>/usr/sbin/grpck</td>
<td>Проверить синтаксис /etc/group</td>
</tr>
<tr>
<td>/usr/sbin/pwck</td>
<td>Проверить синтаксис /etc/passwd</td>
</tr>
<tr>
<td>/usr/sbin/sys-unconfig</td><td>Очистить сетевую конфигурацию</td>
</tr>
<tr>
<td>/usr/sbin/useradd</td>
<td>Добавить пользователя</td>
</tr>
<tr>
<td>drvconfig ; disks</td>
<td>Добавить в систему диск горячей замены</td>
</tr>
</table>
<br /><b>Системная информация и мониторинг</b>
<br /><table border="1" width="100%">
<tr>
<td width="50%">/bin/echo "0t${stamp}>Y\n<Y=Y" | adb</td>
<td>Перевод времени UNIX в удобоваримую форму</td>
</tr>
<tr>
<td>/usr/platform/`/bin/uname -i`/sbin/prtdiag -v</td>
<td>Диагностика системы</td>
</tr><tr>
<td>/usr/sbin/eeprom</td>
<td>Просмотр параметров eeprom</td>
</tr>
<tr>
<td>/usr/sbin/prtconf -vp</td>
<td>Детальный просмотр системной конфигурации</td>
</tr>
<tr>
<td>coreadm -e log</td>
<td>Отчет ядра</td></tr>
<tr>
<td>grep "\-root" /var/adm/sulog | grep -v \+ | tail -25</td>
<td>Перечислить все попытки переключения на аккаунт root</td>
</tr>
<tr>
<td>isainfo -bv</td>
<td>Быстрая проверка режима 32 или 64 bit</td>
</tr>
<tr>
<td>last</td>
<td>Показать, кто и откуда входил в систему</td></tr>
<tr>
<td>logger -i</td>
<td></td>
</tr>
<tr>
<td>prtconf -pv | grep banner-name |awk -F\' ' { print $2 } ' | head -1</td>
<td>Показать модель сервера</td>
</tr>
<tr>
<td>prtpicl -v | grep wwn</td>
<td>Команда поиска постоянно выделенной памяти (?)</td></tr>
<tr>
<td>psradm -f [processor id]</td>
<td>Отключить процессор (?)</td>
</tr>
<tr>
<td>psrinfo | wc -l</td>
<td>Показать число процессоров</td>
</tr>
<tr>
<td>sar -u</td>
<td>Отчет о загрузке CPU</td></tr>
<tr>
<td>sar [ -aA ] [ -o filename ] t [ n ]</td>
<td>Обобщенный отчет об активности системы</td>
</tr>
<tr>
<td>telnet <remote machine> 13 | grep ':'</td>
<td>Получить время удаленной машины</td>
</tr>
<tr>
<td>uname -a</td><td>Отобразить системную информацию</td>
</tr>
<tr>
<td>uname -X</td>
<td>Отобразить системную информацию</td>
</tr>
<tr>
<td>vmstat 10</td>
<td>Отчет о основных системных параметрах в течении 10 секунд</td>
</tr>
<tr>
<td>who -b</td><td>Причина последней перезагрузки</td>
</tr>
<tr>
<td>ypcat hosts | sort -n -t. +0 -1 +1 -2 +2 -3 +3 -4</td>
<td>Взять вывод команд "ypcat hosts" или "cat /etc/inet/hosts" и сортировать по IP</td>
</tr>
</table>URL: http://dreamcatcher.ru/index.php?option=com_content&task=vie...
Обсуждается: http://www.opennet.me/tips/info/1348.shtml
Спасибо, очень полезно и актульно для меня!!!
awk ' END {print NR}' file_name Вывести количество строк в файлеА в Solaris разве нет wc -l?
Есть некоторое количество неточностей.Например перед тем, как конфигурировать второй IP на одном и том же сетевом интерфейсе, надо открыть этот самый интерфейс командой:
ifconfig hme0:1 plumb... и поэтому гораздо проще выглядит следующий формат команды:
ifconfig hme0 addif 10.0.0.2 netmask 255.255.0.0 broadcast 10.0.255.255 upА в целом - неплохо. Будет полезно начитающим SUN-техникам. Но я бы лучше порекомендовал прочитать Solaris System Administration Guide.
http://www.sun.com/bigadmin/shellme/ ...
"prtpicl -v | grep wwn" commanda vyvodit na ekran WorldWideNames dlya SAN [StorageAreaNetwork] HBA [HostBusAdapter] FC-AL [Fibre Channel - Arbitrated Loop] kartochek vrode Qlogic i Emulex
отличная вещь.
реквестирую подобное для hpux
Столько комнад и нет ни одной как открыть файл