PDA

Просмотр полной версии : Основные команды командной строчки.


Егорыч+++
22.06.2005, 18:22
Определение железа из командной строки в Linux

lspci
Показывает информацию о материнской плате и слотах расширения pci.

lsdev
Выводит информацию об устройствах (DMA, IRQ, IO ports).

cat /proc/cpuinfo
Информация о процессоре (cpu info)--показывает содержимое файла cpuinfo. Заметьте, что все файлы в каталоге /proc -- это не настоящие файлы, а просто удобная форма доступа к системной информации.

cat /proc/interrupts
Список используемых прерываний. Может потребоваться для просмотра перед установкой нового оборудования.

smartctl -a /dev/hda; hdparm -i /dev/hda
Узнать информацию о жестком диске (вместо /dev/hda может быть /dev/hdb, /dev/hdc и т.д.)

Определение системной информации из командной строки в Linux

dmesg
При запуске системы ядро печатает длинную последовательность сообщений, эти сообщения информируют состоянии ядра (например, об объеме доступной памяти) и внешних устройствах, обнаруженных в системе. Эта информация необходима при диагностике проблем с аппаратными устройствами или их конфигурацией, а также при определении наименований устройств системы, соответствующих оборудованию (например, возможно, что ваша сетевая карта обнаружена как устройство ne0 или ne1. Обычно при загрузке эти сообщения прокручиваются на экране слишком быстро, чтобы извлечь из них какую-либо пользу, однако команда dmesg(8) позволяет их просмотреть

xdpyinfo
Эта программа дает общую информацию об оконной системе. Версию, релиз Х, загруженные модули и расширения, разрешение экрана, глубину цвета, количество и параметры "экранов" клиент-сервера, а также еще кое-какую информацию.

xvinfo
Программа выдает всю поднаготную об используемом драйвере видеокарты, ее параметрах с текущими значениями и пределами изменения.

uname -a
Выводит информацию о системе -версию,релиз кернела,Сетевое имя системы,Тип процессора,тип платформы и операционной системы.

cat /etc/issue
показывает какой дистрибутив Вы используете
uptime узнать, сколько времени прошло с момента последнего запуска системы

echo "GMT = `date +%s` seconds since 1970" сколько времени в секундах прошло с начала "эры" Юникс

fdisk -l
Показывает информацию о хардиске а также информацию о партициях

service --status-all
Для проверки текущего состояния служб.

chkconfig --list | more
Для того, чтобы получить список запущенных/остановленных служб на всех уровнях выполнения.

last
Показывает список пользователей, входивших в Вашу систему в последнее время. Действительно неплохая идея - проверять этот список в качестве меры предосторожности в Вашей системе.

sar
Просмотр информации о системной активности, представленной в файле (/var/log/sarxx где xx номер текущего дня). sar может показать много вариантов системной информации, включая статистику загруженности процессора, статистику ввода/вывода, и статистику сетевого траффика за текущий день и (обычно) за несколько предыдущих.
free Выдает информацию о памяти и swap

vmstat
Выводит информацию использовании памяти, процессора, областях swap и т.п.

procinfo
Информация о системе

Определение процессов и информации о них из командной строки в Linux

ps
без параметров выводит список процессов, запущенных в данной сессии (т.е. в том же окне, что и ps).

ps -u пользователь выводит список всех процессов указанного пользователя.

top
программа, позволяющая оперативно отслеживать, какие процессы запущены в системе и какие из них потребляют больше всего процессорного времени.

А это наверное самое интересное
Трики и трюки командной строки в линуксе при работе с фаилами

Все что касается размера - обьема - занимаемого места файлами на дисковом пространстве.

df -h Показывает обьем занимаемого места на ваших хардисках

du -sh; du -sh /home/username Показывает обьем занимаемого места конкретной директории

find . -maxdepth 1 -type d -print | xargs du -sh | sort -rn
Позволяет увидеть размер всех директорий в данном каталоге

find . -maxdepth 1 -type d -exec du -sk {} \; | sort -rn
То же, но быстрее и короче
:>file То же, что и cat /dev/null > file, но короче. "Обнуляет" файл. Особенно полезно для чистки логов. Может использоваться вместо touch file для создания новых файлов.

egrep -v "^#|^[:blank:]*$" file
Просмотр файла без комментариев и пустых строк. Особенно удобно для просмотра конфигов.

egrep -v "^#|^$" file Более простой вариант предыдущей команды, если у вас нет пустых строк, состоящих из пробельных символов, или они вас не беспокоят.

Все что касается изменения прав доступа на файлы папки

find . -type f -exec chmod 644 {} \; find /home/username/test -type f -exec chmod 644 {} \; изменяем права доступа на все файлы Файл - чтение запись.

find . -type d -exec chmod 755 {} \; find /home/username/test -type d -exec chmod 755 {} \; изменяем права доступа на все папки. Каталог - выполнение

Команды для форматирования вывода:

command |grep word покажет только строки вывода от command содержащие слово word
command |less остановит вывод при достижении нижней границы экрана и продолжит по строкам при нажатии Enter

command |cat заставит команды ограничивающие вывод до размера экрана (на пример man) продолжать после достижения нижней строки

command |tac
будет сортировать строки вывода от command в обратном порядке

command > out
направит вывод от command в файл или устройство out

command >> out
добавит вывод от command в файл out

Определение сетевой информации из командной строки в Linux

netstat -lp --inet
Показывает информацию о сетевых сервисах

netstat -p --inet
Показывает активные соединения из/в системе

lsof -i
Команда lsof, которая показывает все открытые файлы, с опцией -i показывает сетевые соединения вместе с процессами к которым они относятся:

//часть инфы взята с http://forum.ru-board.com/topic.cgi?forum=62&topic=4149&limit=1

nerezus
22.06.2005, 18:37
несколько фишек:

поиск инфы
find / -name {шаблон имени файла} | grep {шаблон поиска} > {имя файла для записи результатов}

если нет fetch, curl, wget
юзаем
lwp-mirror {url} {file}

если нужно преобразовать текст(по шаблону/поиск/выборка), юзаем AWK
если нужно, выложу русский мануал

Егорыч+++
23.06.2005, 18:12
tail -f /var/log/файл с логами

Полезная команда. Позволяет отслеживать файл с логами в online режиме.

tmp
24.06.2005, 02:18
...

netstat -p --inet
оНЙЮГШБЮЕР ЮЙРХБМШЕ ЯНЕДХМЕМХЪ ХГ/Б ЯХЯРЕЛЕ



netstat -p --inet
Показывает активные соединения из/в системе


А я это же самое делал как :
netstat -tu -p
;-)

А вот это и впрям класная фишка -
tail -f /var/log/

Grrl
24.06.2005, 02:30
монтирование разделов Fat
добавляем в /etc/fstab :
/dev/hda7 /mnt/fat vfat rw,umask=0,codepage=866,iocharset=koi8-r,gid=100 0 0
а в /mnt/ создем папку fat

P.S. самая интересная команнда это rm -r * под рутом в корне:))))))))))

nerezus
24.06.2005, 06:54
tmp, настрой кодировку в броузере (цп1251)
Grrl, а это каким боком к теме? :)

tmp
24.06.2005, 10:47
2nerezus
Да она у меня такая и стоит, иначе как я читалбы к примеру этот форум.
Хотя надо будет еще поковыряться мож че - где ;-)
щас не могу проверить, на работе у меня винда.
с уважением

tmp
29.07.2005, 10:59
Если шо не знаешь, man и всё рулит.
Да, это хорошо - когда знаешь к чему ман читать, а вот когда не знаешь?... ;-)
я вот не знал одной замечательной команды пока не столкнулся с надобностью, пришлось по форумам полазить -
Команда для снятия-записи образа:
----
dd if=/dev/имя_с_чего_образ of=/имя_будущего_образа.img - так создаем образ

dd if=/имя_образа.img of=/dev/имя_куда_образ - так заливаем
----
команда оч клевая! Можно к примеру сразу образ за паковать и разбить на части:
----
dd if=/dev/hda1 | bzip | split --bytes=671088640 - ну а дальше понятно...
-----

P.S.
Единственно - мож кто знает:
если делать образ всего харда а потом заливать на другой с большей от оригинала емкостью, зальется нормально? И лишнее место останется видимым?

Krueger
08.10.2005, 18:50
Единственно - мож кто знает:
если делать образ всего харда а потом заливать на другой с большей от оригинала емкостью, зальется нормально? И лишнее место останется видимым?
лишнее место останется пустым и неразмеченым, чтобы его использовать юзай fdisk, newfs или /stand/sysinstall для FreeBSD в линухе без понятия.

tmp
19.10.2005, 17:20
лишнее место останется пустым и неразмеченым, чтобы его использовать юзай fdisk, newfs или /stand/sysinstall для FreeBSD в линухе без понятия.
Сенкс! Да ! В линухе есть fdisk!

Deem3n®
28.10.2005, 16:30
вот еще одна полезная команда apropos

пример использования:

linux:~$ apropos browser
Galeon [galeon] (1) - gecko-based GNOME web browser
cacaview (1) - ASCII image browser
gThumb [gthumb] (1) - an image viewer and browser for GNOME
links (1) - lynx-like alternative character mode WWW browser
lynx (1) - a general purpose distributed information browser for the World Wide Web
mozilla (1) - a Web browser for X11 derived from Netscape Communicator
ncftp (1) - Browser program for the File Transfer Protocol
pilot (1) - simple file system browser in the style of the Pine Composer
smbtree (1) - A text based smb network browser

Егорыч+++
06.11.2005, 13:32
Поиск текста в файлах на сервере.

egrep -i "expression" `find . -type f -print`

find . -type f -exec egrep -i "expression" /dev/null {} \;

find . -type f -print | xargs egrep -i "expression"

Morph
31.03.2006, 21:51
Народ у меня вопрос даже ттрабла кое какая.
В общем скачивал файлик один скачал, потребовалось удалить т.е попользовался, но он как бы удалился но не совсем.

Если я его попытаюсь в него что нибудь записать то напишет типа нету такого файла.
если чо нить попробую переименовать напишет нету такого файла.
в общем что не зделать даже если зайти из веба напишет что нету таког файла.
но если вбить команду ls -la то показывает что этот гребанный файлик существует.
мона залить файлик с таким же именем и будут два одинаковых файла но один существует на 100 но другой как бы показывает что существует но его нету.


Несочтите что я в бреду, я сам в начале охерел но что то не так тута.

да в чем трабла так как удалить этот файлик ?

KEZ
01.04.2006, 19:20
может это не файлик а директория, чмоднутая на 000 ?

limpompo
01.04.2006, 19:25
less -X /var/log/messages

Morph
01.04.2006, 19:44
нее это именно файлик я по дурости несколько запросов подряд отправил на закачку а он теперь не удаляеться :(

Цитирую:
less -X /var/log/messages

а эт что делает?

limpompo
01.04.2006, 20:10
Morph

Егор описывал less:остановит вывод при достижении нижней границы экрана и продолжит по строкам при нажатии Enter

Ps. не внемателен ты =)

Liquid Rei
03.04.2006, 17:31
Под рутом удаляется все...
На крайняк можно подождать ребута сервера :d

Dronga
27.07.2006, 07:33
Можно попробовать командой shred, такая команда имеется в UbuntuLinux, не знаю как в остальных. Всё содержимое файла рендомно перезаписывается. Синтаксис shred fail.txt. А после этого возможно удалиться. Кстати, создатели Ubuntu утверждают, что использование rm не секьюрно, поэтому рекомендуется сперва shred, а потом уже rm.

А вообще похоже на трабл с файловой системой, попробуй перезагрузить сервер, чтобы вызвать проверку жесткого, команда reboot. Может быть можно без перезагрузки вызвать проверку жесткого?? Я не знаю таких команд.

ysmat
23.09.2006, 13:46
какие есть команды для копирования папок в lunix системах
например нужно скопировать все содержимое phpmyadmin из
/www/cgi/mns/phpmyadmin в папку /bhome/part2/01/www/forum/phpmyadmin
а после использования желательно ее удалить

команды должны быть в одну строку так как выполняется будут
через форум

w00d
23.09.2006, 13:57
Можно переместить:
mv /www/cgi/mns/phpmyadmin /bhome/part2/01/www/forum/
или
cp -r /www/cgi/mns/phpmyadmin /bhome/part2/01/www/forum/
а потом
rm -rf /www/cgi/mns/phpmyadmin

PS: Да и вообще.. что значит команды в одну строку???
Разве нет оператора " ; " ???

ysmat
23.09.2006, 17:49
нормально прокатила команда
cp -r /www/cgi/mns/phpmyadmin /bhome/part2/01/www/forum/
как теперь папку phpmyadmin можно переименовать

ysmat
24.09.2006, 18:49
если создается обычный текст
то команда echo text > file работает
а вот например echo <? system($cmd); ?> > file нет
ненравится символы <($)> как это можно обойти
если екранировать ковычками то
создается все кроме $
пробовал
echo "<? system($cmd); ?>" file
echo "<? system("$"cmd); ?>" file
знак $ никак не проходит

[ Added by Gh0s7 ]

echo '<? system("$"cmd); ?>' > file

Ch3ck
24.09.2006, 22:00
Ба!!!, а если открыть встроенный редактор, какой-нить mc.
По-моему в каждой *nix системе стоит.

Deem3n®
24.09.2006, 23:09
...знак $ никак не проходит...echo "<? system(\$cmd); ?>" > file

ysmat
25.09.2006, 06:38
echo "<? system(\$cmd); ?>" > file
как раз то что нужно

KPOT_f!nd
27.09.2006, 01:36
Unix Shell

Очень многие версии Unix имеют один и тот же набор стандартных команд, только иногда имеют разные параметры запуска. Знать их нужно и полезно. Я хочу не просто перечислить команды и их параметры, но и рассказать о том каким образом они могут быть использованы Администраторами, пользователями или даже взломщиком. Как вы будите использовать их это ваше дело, я лишь говорю о возможностях Unix.
----------------------------------------------------------------------
Команда: df <ключи> Назначение: Вывод информации свободном месте на файловой системе. Ключи: -b Вывод размера свободного места на диске в байтах. -e Вывод числа, показывающего, сколько еще файлов может быть создано. Этот параметр используется не везде. -F <тип> Вывод информации о несмонтированных файловых системах заданого типа, указаных в файле конфигурации виртуальных файловых систем(vfstab). -g Возвращает всю структуру statvfs для несмонтированых файловых систем. -k Вывод размера занятого места на диске в байтах. -l Вывод информации только о локальных файловых системах. -n Вывод типа файловой системы. Этот параметр используется не во всех системах. -t Вывод свободного и занятого места. Не во всех версиях... Заключение: Эта команда дает представление о том какими объемами обладает система и какие еще системы могут быть подключены в дальнейшем. Косвено говорит о параметрах коопиляции ядра. В случае с подключаемыми сетевыми интерфейсами дает информацию и о них.
----------------------------------------------------------------------
- Команда: du <ключи> <файлы или каталоги> Назначение: Подсчитывает размер занятого файлыми или каталогами места. Чаще всего подсчет ведется в блоках, один блок это 512 байт. Ключи: -a Вывод информации не только о каталогах, но и о файлах. -r Вывод информации о файлах и каталогах, которые команда du не смогла открыть. -s Вывод результат минуя промежуточные действия. Заключение: Может оказаться полезной для получения информации о системе в том случае, если нет доступа к команде df или quote. Полезна для подсчета чьих-либо файловых накоплений.
----------------------------------------------------------------------
-- Команда: finger <ключи> <пользователь> Назначение: Выводит разнообразную информацию о пользователях. Идентификатор, имя, терминал, время работы, адрес. А так же дает информацию о пользовательском интерпритаторе командной строки и содержимое файлов .plan и .project из домашнего каталога пользователя. Ключи: -b Длинный формат, без вывода информации о домашнем каталоге и интерпритаторе строки. -f Короткий формат вывод. -h Длинный формат, без вывода информации из файла .project -i Вывод информации о неактивности пользователя: системный идентификатор, терминал, время входа в систему и причина неактивности. -l Длинный формат. -m Вывод информации о пользователе с заданым системным идентификатором, не проверяя список имен и фамилий. -p Длинный формат, без вывода информации из файла .plan. -q Вывод системного идентификатора пользователя, терминала и времени входа в систему (не производя поиска в списке имен и фамилий) -s Короткий формат. -w Короткий формат, имя пользователя не выводится, выводится только фамилия. Заключение: Позволяет получит массу поезной информации о пользователе. Поиск пользователей по шаблону дает возможность скопить собственную базу пользователей. Информация о том когда пользователь вошел и вышел и сколько провел времени и на каком терминале, оказывается не заменимой как для Администратора так и для взломщика. Возможно использовать как альтернативу команде who.
----------------------------------------------------------------------
Команда: groups <пользователь> Назначение: Выводит список групп, членом которых является данный пользователь. Если список не указан, то выводится список групп, членом которых является пользователь, отдавший команду. Заключение: Дает возможность четко определить пользователей принадлежащих к какой-либо группе. Что возможно облегчит задачу взломщику в подборе будущих жертв или уже определении статуса взломанных.
----------------------------------------------------------------------
- Команда: id <ключи> Назначение: Вывод вашего системного идентификатора и его номер, а так же группы членом которых вы являетесь, и их номера. Ключи: -a Вывод списка всех групп, к которым принадлежит пользователь. Заключение: Данная команда может быть использована звломщиком, чтобы опредлить свой статус в системе и возможности пользователя.
----------------------------------------------------------------------
-- Команда: listusers <ключи> Назначение: Вывод списка системных идентификаторов всех пользоватей и соотвествующих им номеров. Команда доступна не во всех системах. Ключи: -g <группа> Вывод списка членов данной группы. -l <системный_идентификатор> Вывод информации о пользователе с данным системным идентификатором. Заключение: Позволяет получить информацию о каждом члене группы, что понижает общий уровень безопасности. Команда может быть использована для накопления списка пользователей для последующей атаки.
----------------------------------------------------------------------
--- Команда: nice <ключи> <команда> <аргументы> Назначение: Выполнение указаной команды с пониженным приоритетом. Ключи: -n Величина, на которую уменьшается приоритет. По умолчанию -10. Заключение: Иногда при помощи этой команды зломщик пытается маскировать не желательный процес, например, перебор паролей.
----------------------------------------------------------------------
--- Команда: nohup <команда> <аргументы> & Назначение: Позволяет команде выполняться даже после того, как вы завершите работу с системой. Заключение: Эта команда полезна и удобна для всех, в том числе и для взломщика. Небольшой скрипт на perl или готовая скомпанованая програма могут оставить лазейку в систему с правами пользователя запустишего этот процес. Стоит проверять присутствие нежелательных процесов, это можно делать командой netstat или ps. О них я расскажу ниже.
----------------------------------------------------------------------
---- Команда: passwd <ключи> <пользователь> Назначение: Установка пароля на вход в систему. Остальные ключи доступны лиш, привелигированным пользователям. Ключи: -s Вывод следующей информации о пароле: Идентификатор пользователя. Статус пароля (NP (No Password) - нет, PS (Password) - пароль установлен, LK (Locked) - вход в систему с данным идентификатором пользователя запрещен. Дата последней смены пароля. Наименьшее количество дней, которое должно пройти после изменения пароля для возможности повторного его изменения. Масимальный срок действия пароля. Количество дней, за которое до истечения срока действия пароля начинают делаться предупреждения о необходимости смены пароля. Для привелегированных пользователей: -a Вывести информацию о всех пользователях. -d Не запрашивать пароль у пользователя. -f Потребовать от пользователя смены пароля. -l Запретить вход в систему пользователю с данным идентификатором. -n Установить наименьшее количество дней, которе должно пройти для возможности повторной смены пароля. -w Установить количество дней, за которое до истечения срока действия пароля пользователь начинает получать предупреждение. -x Установить масимальный срок действия пароля. Заключение: С виду простая команда passwd оказалась довольно интересной. С ее помощью Администатор может быстро выявить пользователей сменивших свои пароли, если например точно известно что действительный пользователь не мог сделать этого. Кроме того следует определить политику безопасности которой будут следовать пользователи. Частоту и длину смены пароля, например.
----------------------------------------------------------------------
ps <ключи> Назначение: Вывод списка всех запущенных процесов. Когда эта команда используется без параметров, то выводимый список содержит информацию о номере процесса и команду запуска, при помощи которой был запущен процесс. Изменяю ключи можно получить подробнейшую информацию о состоянии системы. Описаные здесь ключи могу быть отличными в других системах, например в BSD вместо ps -ef вы должны использовать ps -aux. Ключи: -a Вывод списка всех процессов, за исключением ведущих процессов групп и процессов, не связанных с каким-либо терминалом. -c Вывод информации о классах процессов, используемых планировщиком задач. RT - Real Time, TS - Time Sharing, IA - Inter Active. -d Вывод информации о всех процессах, кроме ведущих процессов групп. -e Вывод информации о всех без исключения процессах. -f Вывод большого количества информации о процессах. UID - UserID, PID - Номер процесса, PPID - Номер Родительного процесса, C - приоритет процесса , STIME - Время начала работы процесса, TTY - Терминал с которого был запущен процесс, Time - общее время работы процесса. -g <списко> Вывод информации о процессах, принадлежащих группам, ведущие процессы которых имеют номера, указанные в списке. -j Вывод только номера процесса, но и номеров его группы и сеанса. -l Вывод большого количества информации о процессах, включающей, например, приоритеты, установленные командой nice, и многое другое. -p <список> Вывод информации о процессах, номера которых указаны в списке. -s <список> Вывод информации о процессах, принадлежащих сеансам, ведущие процессы которых имеют номера, указаные в списке. -t <список> Вывод информации о процессах, связанных с одним из терминалов в списке. -u <список> Вывод информации о процессах, принадлежащих одному из пользователей в списке. Заключение: Команда ps, является ключевой, с ее помощью осуществляется контроль над всей системой. Все ее ключи лучше знать наизусть. Если в вашей версии Unix ключи различны, то используйте команда man ps для получения описания ключей. Этой командой пользуются все администраторы, с ее помощью ничто не ускользнет от его взгляда, разве что rootkit сможет ему помещать. =)
---------------------------------------------------------------------
Команда: pwd Назначение: Вывод пути текущего каталога включая имя самого каталога. Заключени: Эта на первый взгляд мало необходимая програма на самом деле оказывается просто не заменимой при использовании символьных ссылок на другие каталоги. Часто зайдя в директорию /home, можно оказаться в /usr/base/users или еще где похлеще, здесь то нам и пригодится эта програма.

KPOT_f!nd
27.09.2006, 01:38
at - указание времени когда выполняется команда
chown - смена хозяина файла
batch - выполнить команду во время загрузки
telnet - клиент телнет
ftp - клиент фтп
rmdir - удалить каталог
finger/who/users - вывести список работающих в системе.
gcc - компилятор C
ftpwho - фингер для фтп
mv - переместить файл
kill - прекратить процесс
cat - текстовой редактор
ls - просмотр каталога
chmod - смена привилегий файлового доступа
rm - удалить файл
mail - ну, типа, работа с мылом
cd - сменить каталог
cron - демон команд at и batch
logname - получение имени регистрации
cp - копирование чего либо.
uname-a - всё о версии системы.
crontab - задать резервы времени между запусками прог.
pwcheck - просмотр дефолтового файла пароля.
umask - маска для определённого файла.
su - программа su
sleep - преостановить процесс.
news - отображение usenet
write - мессага текущему юзеру.
uux - выполнить комманды на remote компе
nslookup - сводки гидромедцентра о IP
uucp - копирование файл с/на remote комп
uuname - список хостов UUCP
more - вывод текстовика в постраничном режиме
greg - поиск строки в фйле по заданному ключу
greg -i - то же,без учёта регистра.
uuencode - содание текстовой версии двоичного файла( для мыла)
uudecode - ну, типа противоположность предыдущей.
tar - создание архивов файлов.
uncompress - получение исходного из сжатого файла.

Егорыч+++
06.12.2006, 12:35
dd if=/dev/zero of=/tmp/bigfile.jpg bs=1024k count=250

Этой командой можно создать пустой файл заданного размера. Вданном случае размер файла будет 250mb.

_Great_
06.12.2006, 14:03
dd вообще позволяет копировать блоками информацию из файла/устройства в файл/устройство.
Например, сдампить дискетку:
dd if=/dev/fd0 of=/tmp/floppy bs=1024 count=1440
сдампить MBR жесткого диска:
dd if=/dev/hda of=/home/my/mbr bs=512 count=1
записать аналогичным образом и еще много чего.

EXSlim
06.12.2006, 18:37
dd вообще позволяет копировать блоками информацию из файла/устройства в файл/устройство.
Например, сдампить дискетку:
dd if=/dev/fd0 of=/tmp/floppy bs=1024 count=1440
cp /dev/fd0 /tmp/fdd.img ?



Увеличиваем виртуальную память без перезагрузки
Создание файла подкачки и его подключение. Только для root

//Пустой файл
dd if=/dev/zero of=/swap bs=1k count=32768

//делаем созданый файл файлом подкачки
mkswap /swap 32768

//подключаем
swapon /swap

MegaDeth
16.03.2007, 20:36
как с помощью консольки (ну точнее.. system() ) копировать файл с удаленого хоста в текущую папку? cp http://site.ru/file.rar file.rar: не катит

[ Added by Gh0s7 ]

Насколько помню, такое й вариант работаей на иосах (цисках), а в никсах для этого есть wget:

wget -O out http://somehost/somefile

(man wget)

_Great_
16.03.2007, 21:14
как с помощью консольки (ну точнее.. system() ) копировать файл с удаленого хоста в текущую папку? cp http://site.ru/file.rar file.rar: не катит
wget http://site.ru/file.rar -O file.rar

Digimortal
16.03.2007, 21:29
как с помощью консольки (ну точнее.. system() ) копировать файл с удаленого хоста в текущую папку? cp http://site.ru/file.rar file.rar: не катит
wget http://site.ru/file.rar -O file.rar
links -source http://site.ru/file.rar > file.rar
lynx -source http://site.ru/file.rar > file.rar
curl http://site.ru/file.rar -o file.rar
GET http://site.ru/file.rar > file.rar
fetch -o http://site.ru/file.rar -p file.rar

Un_0
12.05.2007, 18:17
Наверное, все знают. Но...
Чтобы убить процесс, когда известно имя, но процессов очень много.

ps ax | grep <name> | grep -v grep | cut -d ' ' -f2

Выведет ID.

Потом kill -9 <ID>

=====

Если нужно убить, не задумываясь, то:

{ x=`ps ax | grep <name> | grep -v grep | cut -d ' ' -f2`; kill -9 $x; }

(пробелы обязательны)

=====

Довольно удобно пользоваться этим конвеером при зависшем Х-приложении, переключившись в консоль.

andy13
13.05.2007, 07:51
Un_0, почему не хочешь использовать killall для прибивания процессов?

Un_0
13.05.2007, 11:37
Un_0, почему не хочешь использовать killall для прибивания процессов?

Не все процессы нужно прибить, а определенный по имени. Например, запустил я Q3, а он повис. Я переключился на консоль и убил его. А если просто использовать ps ax, то долго искать глазами нужный ID.

andy13
13.05.2007, 18:17
ps ax | grep <name> | grep -v grep | cut -d ' ' -f2
эквивалентно `pidof prog_name`
Результатом работы и в том и в другом случае
будет pid или несколько pid'во. Как ты определяешь, какой именно
потом нужно прибивать?


{ x=`ps ax | grep <name> | grep -v grep | cut -d ' ' -f2`; kill -9 $x; }
тоже самое, что и `killall -9 prog_name`

так ведь проще!

tclover
13.05.2007, 18:20
датчик движения на базе линукс и оптической мышки
while true;do hexdump -n 1 /dev/mouse >/dev/null 2>&1 && echo "По столу кто-то ходил в \"`date`\"";done
(с)morik

Un_0
14.05.2007, 16:40
так ведь проще!

Не спорю, но pidof работает только под рутом. Да и варианты решений одной задачи позволяют выбрать оптимальный для конкретного случая.

Кстати, вычитал, что лучше пользоваться $( ), а не =`...`

Так что окончательный вариант:

kill -9 $(ps ax | grep <name> | grep -v grep | cut -d ' ' -f2).

andy13
15.05.2007, 08:16
pidof работает только под рутом
`id`
uid=65534(nobody) gid=65534(nogroup)
`pidof init`
1

Да и варианты решений одной задачи позволяют выбрать оптимальный для конкретного случая.
в том то и суть - свобода выбора.

Un_0
17.05.2007, 17:29
Команда seq

=======

Использование: seq [КЛЮЧ]... ПОСЛЕДНИЙ
или: seq [КЛЮЧ]... ПЕРВЫЙ ПОСЛЕДНИЙ
или: seq [КЛЮЧ]... ПЕРВЫЙ ПРИРОСТ ПОСЛЕДНИЙ
Печатает числа от ПЕРВОГО до ПОСЛЕДНЕГО с шагом ПРИРОСТ.

-f, --format ФОРМАТ использовать ФОРМАТ в стиле printf (по умолчанию %g)
-s, --separator СТРОКА использовать СТРОКУ как разделитель (по умолчанию \n)
-w, --equal-width выравнивать по ширине, добавляя в начало нули

=======

Можно использовать для генерации уинов для брута.

tclover
25.05.2007, 21:26
http://www-128.ibm.com/developerworks/ru/edu/l-lpic1103/index.html
Уровень сложности: средний

Ян Шилдс , Старший программист, IBM

15.11.2005

Графические пользовательские интерфейсы облегчают диалог с системой, но, чтобы понять настоящую мощь Linux, необходимо уметь работать с командной строкой. Приготовьтесь к экзамену LPI®101 и узнайте о потоках и фильтрах, файлах и управлению процессами, регулярных выражениях, а также редакторе vi. В третьем из пяти руководств, Ян Шилдс знакомит вас с командной строкой Linux®, а также некоторыми командами GNU и UNIX. К концу этого руководства вы сможете свободно использовать команды на любой Linux системе.

~!DoK_tOR!~
11.08.2007, 03:29
Создание шифрованного туннеля на 10 минут для безопасного получения почты:
$ ssh -2 -4 -C -N -f -L 8110:
localhost:110 myname@mydomain.ru \ sleep 600

Удаление времменых файлов, созданных болле семи дней назад:
# find /tmp -type f -name '*' -mtime +7 -print0 | xargs -0 rm -f

Автоматизированное изменение прав доступа к файлам и директориям :
$ find . -type f -print0 | xargs -0 chmod 644
$ find . -type d -print0 | xargs -0 chmod 755

Очистить окно терминала при логине и выходе из шелла:

bash:
echo clear > ~/.bash_login
echo clear > ~/.bash_logout

zsh:
echo clear > ~/.zlogin
echo clear > ~/.zlogout

echo clear > /var/log/
echo clear > /var/log/wtmp и т.д

Показать файлы ,отсортировав список по дате модификации:
$ ls -Fltr

Показать каталоги и отсортировать список по размеру:
$ du -s | sort -n

Найти файл ,содержащий строку:
$ find . -type f -exec grep -H строка \{\} \;

Найти файлы ,с даты модификации которых прошло более 7 дней:
$ find . -mtime +7

Найти файлы с SUID-битом:
$ find . /bin -type f -perm -u=s

Копировать каталоги ,используя tar (с сохранением прав,ссылок и т.д):
$ tar -cf - . | (cd /tmp; tar -xf -)

Удалить все,файлы кроме одного:
$ rm -i `ls -d *.txt | grep -v '^неудалять.txt'

Показать строки, содержащиеся в бинарном файле:
$ strings file

~!DoK_tOR!~
26.08.2007, 18:34
Получить полный листинг активных правил iptables:
# iptables -t nat -L -n -v
# iptables -t mangle -L -n -v
# iptables -t filter -L -n -v

Содержимое системного журнала можно вывести на отдельную консоль, доступную по комбинации клавиш <Ctrl+Alt+F12>;
$ tail -f /var/log/messages > /dev/tty12

Укороченная запись для создания резервной копии файла:
# cp /etc/passwd {,.bak}

То же самое, но с учётом текущей даты:
# cp /etc/passwd {,_`date +%d%m%Y`. bak}

Удалить все пустые строчки из файла test.ini:
$ sed -e '/^$/d' test.ini > test.out

Чтобы посмотреть список своих расшаренных SMB и NFS-ресурсов:
$ smbclient -n -L 127.0.0.1
$ showmount -e

Тестируем работу сетевого сервиса, который работает через SSL:
$ openssl s_client -connect 192.168.1.1:443

Поменять в файле file.txt все слова luck на hack с помощью perl:
$ perl -pi -e 's/luck/hack/g' file.txt

То же самое проделывается в vi/vim следующим образом:
$ vi file.txt :1, $s/luck/hack/g

Убрать все символы ^M из DOS'овского файла:
$ col -bx < dosfile.txt > newfile.txt

Поиск заданного слова в каталоге /usr/src :
$ find /usr/src -type f -exec grep -i hack {} \;

Получить размер всех дир в нужном каталоге:
$ find /usr/src -type -f name '*. [chy]' -print | xargs grep -inC hack

Преобразовать справочную man-страницу в обычный текстовник :
$ man pf.conf | col -b > ~/pf.txt

_-Ramos-_
09.09.2007, 11:57
Вывести содержимое сайта в терминал

# elinks -dump “http://www.research.su”
# lynx -dump “http://www.research.su”
# links -dump “http://www.research.su”

Сохранить содержимое сайта в файл

# elinks -dump “http://www.research.su” > file1
# lynx -dump “http://www.research.su” > file2
# links -dump “http://www.research.su” > file3

Запустить консольную команду в фон

# program-name &

Найти файл

# find /foldername -name name-of-file
# find /home -name *vertito*
# locate *vertito*

Узнать кто сейчас активен на сервере через SSH

# w

Найти все файлы в определенной директории которые содержат определенную строку

# find /home/vertito -exec grep -li искомая_строка {} \;

Найти файл с определенным именем и удалить его

# find / -name имя_файла.txt -exec rm -rf {} \;

Получить больше информации о какой-либо команде

# man elinks
# apropos elinks
# whatis elinks
# info elinks

Распечатать номера строк текстового файла

# cat -n yourfile.txt

Удобно просмотреть содержимое файла

# less testfile.txt

Получить статистику использования файловой системы

# df -ah

Узнать сколько времени прошло с загрузки системы

# uptime

Просмотреть историю перезагрузок

# last reboot

Найти файлы с правами 750

# find / -type f -perm 750

Найти все файлы, которые никому не принадлежат

# find / -nouser

Извлечь DVD/CD :))

# eject

~!DoK_tOR!~
15.11.2007, 17:53
Чтобы найти все скрипты в /etc в котрых упоминается утилита iptables :
sudo grep -r "iptables" /etc

или

sudo find /etc -name '*.conf' -print | xargs grep "iptables" /dev/null


/bin/ls

ls -lad dir позволяет просмотреть директорию без просмотра ее содержимого, то есть права на саму папку.
ls -R - рекурсивный просмотр всех каталогов например, если тебе нужно найти все .bash_history на машине, тебе будет достаточно команды:

cp `ls -Ra / | grep .bash_history` /tmp/hist

ls -1 - зарисует тебе все файлы в один столбец (очень удобно для формирования массива в Perl без использования opendir() и readdir() )

Стираем историю команд:
export HISTFILE=/dev/null

ln -sf /dev/null /home/antichat/.bash_history

~!DoK_tOR!~
16.11.2007, 19:50
lastb
Показывает последние плохие (неудавшиеся) попытки входа в систему. Это не работает в моей системе, но в ней можно сделать так: touch /var/log/btmp
"Весьма разумно, что /var/log/btmp отсутствует во многих разумных вариантах установки - это файл для всеобщего чтения, содержащий ошибки входа в систему. Поскольку одна из наиболее распространенных ошибок входа в систему состоит в печати пароля вместо имени пользователя, /var/log/btmp - просто подарок для хакера." Возможно, проблема может быть решена изменением прав доступа к файлу для того, чтобы только "root" мог использовать "lastb":

chmod o-r /var/log/btmp
history | more

Показывает последние (1000 или более) команд, выполненных в командной строке текущим пользователем. Выражение "| more" позволяет делать остановки после каждого заполнения экрана выводом команды.

sysctl -a |more
Показывает все конфигурируемые параметры ядра Linux.

chage -l my_login_name
Посмотреть информацию о времени истечения моего пароля.

quota
Посмотреть мою дисковую квоту (предел использования диска).

head name_file
Печатает первые 10 строк (длинного) текстового файла.

tail name_file
Печатает последние 10 строк (растущего) текстового фала. Используйте tail -f имя_файла для просмотра конца растущего файла в процессе роста -- очень удобно для просмотра файлов журнала.

look термин
Поиск в словаре (/usr/share/dict/words) слов, начинающихся с "термин"

find /dev -user "admin" |more
Вышеуказанная команда ищет список устройств, владельцем которых является "admin". Печать имени файла является "действием по умолчанию" для команды. Его не надо определять специально, если это все что необходимо сделать.

find /home/peter -nouser -exec ls -l {} \; -ok chown peter.peter {} \;
Найти файлы, у которых отсутствует владелец в директории /home/peter. Вывести файлы в длинном формате. При этом присвоить им владельца "peter" и группу "peter". Вам необходимо иметь права "root" для того чтобы сменить владельца файла.

rgrep -r 'celeste' . |more
grep -r 'celeste' . |more
(Две команды, используйте ту, которая сработает в вашей системе.) Показывает все файлы текущей директории и ее поддиректорий (параметр "-r" значит "рекурсивно") содержащие строку "celeste". Показывает имена файлов и строки, содержащие подстроку поиска.

talk username1
Поговорить с пользователем, зарегистрированным в настояшее время на локальной машине (или используйте talk username1@machinename для разговора с пользователем на другой машине). Чтобы принять приглашение на разговор, наберите команду "talk username2". Если кто-то слишком навязчиво пытается с вами поговорить, мешая вам работать, наберите "mesg n" чтобы запретить прием сообщений. Вы можете использовать команды "who" или "rwho", чтобы получить список пользователей, работающих в настоящий момент в системе. talk - это одна из старомодных "стандартных" программ UNIX, но она ничуть не утратила своей актуальности.

minicom
Программа Minicom предназнасена для эмуляции терминала на последовательном порте. Выглядит и работает, как "Procomm" или "Telix". Полезна для тестирования и отладки соединения через ваш последовательный порт.

zip archiv.zip name_file1 name_file2
Сжать два файла "name_file1" и "name_file2" в архив zip с именем "archiv.zip".

cat name_file | mimencode -o name_file.mime
cat name_file.mime |mimencode -u -o name_fileа
Кодирует и декодирует файлы в стандартный формат Internet для передачи 7-битных данных, называмый "mime". В более старых дистрибутивах команда (mimencode) называлась mmencode. Обычно вам не требуется выполнять эту команду, потому что ваша почтовая программа выполняет кодирование/декодирование mime самостоятельно.

tar czvpf /var/backups/mybackup.tar.gz /home
cd /; tar xzvpf /var/backups/mybackup.tar.gz '*/myfile.rtf'
Создает резервную копию (backup) каталога /home в сжатый файл. Вторая команда показывает, как восстанавливать файл из резервной копии.

Поиск файлов

Команда find используется для поиска файлов. Если написать в консоли просто "find", то на экран будут выведены все файлы из текущей директории и ее поддиректорий. find -type d покажет только директории, а file -type f покажет только файлы. Но для настоящего поиска используется команда find -name <имя файла>. Например, find -name '*.c' найдет все файлы с расширением ".c", а find -name file.txt найдет все файлы с именем file.txt.
find -size [+|-]<размер> найдет файлы, которые больше указанного размера (+), или меньше (-), или которые занимают ровно столько, сколько указано (если число без знака).
find <директория> запустит find для поиска именно в этой директории (можно указывать несколько).
Недостатком find является медленный поиск, поэтому существует альтернативная команда locate <имя файла>, которая ищет конкретный файл по уже созданной базе данных.

Также можно поискать и базы с кредитками (чаще всего номера содержатся имеено в таких базах данных):
find -name *.sql
find -name *.xls
find -name *.mdb

~!DoK_tOR!~
09.02.2008, 17:12
Если нужно скопировать только часть файловой системы (в данном случае /var/named)
$ cd /var
$ tar cf -named | (cd /mnt/var; tar xpf -)

Показать календарь на текущий месяц
$ cal 19 2007

Ky3bMu4
15.02.2008, 22:33
fuser /folder/ - показывает процессы которые используют папку folder

sockstat - показывает(вместе с pid) процессы которые общаются с сеткой

sed 's/target/source/g' file - заменяет строку target на source в файле file

echo 'target' | tr '[:lower:]' '[:upper:]' - заменяет символы в нижнем регистре на верхний

mr.celt
20.02.2008, 14:12
работа с текстовыми данными:
=======================
hexdump -C /bin/cat | less - содержимое нетекстового файла в виде шестнадцатеричных ASCII-кодов

strings /bin/cat | less - содержимое нетекстового файла , показывающей только те части файла, которые могут быть представлены в виде текста.

find . | wc -l - Подсчет файлов при помощи find и wc

find /etc -maxdepth 1 -group adm 2> /dev/null \ > | cut -d / -f 3 - Извлечение отдельного поля

cat cat.info | tr abcdefghijklmnopqrstuvwxyz абцдефгхийклмнопкрстуввси з \ > | tr ABCDEFGHIJKLMNOPRSTUVWXYZ АБЦДЕФГХИЙКЛМНОПКРСТУВВСИ З | head -4 - Замена символов (транслитерация)

cat grep.info | tr "[:upper:]" "[:lower:]" | tr "[:space:][: punct:]" "\n" \ > | sort | uniq -c | sort -nr | head -8 - Получение упорядоченного по частотности списка словоупотреблений

find /bin -type f -perm +a=x \ > | xargs grep -l -e '^#!/' 2> /dev/null - Поиск всех исполняемых файлов, которые точно являются сценариями

Данные взяты с intuit.ru

~!DoK_tOR!~
22.04.2008, 19:37
Ищем пользователей без паролей:
cut -d: -f1,2,3 /etc/passwd | grep ::

xcedz
22.04.2008, 19:41
Чуваки советую

http://www.f-notes.info/?p=2&sp=2

отличная подборка ))

может давайте также сделаем по группам а то как то в разноброс, а? как вы считаете?

~!DoK_tOR!~
22.06.2008, 05:34
SUSE Linux Toolbox

1000+ комманд для openSUSE и SUSE Linux Enterprise
Год 2007
Язык английский
Об авторах:
Christopher Negus - автор Fedora and Red Hat Linux библий, Linux Toys, Linux Troubleshooting Bible, и Linux Bible, 8 лет работал в AT&T.
Francois Caen - Red Hat Certified Engineer (RHCE), его компания Turbosphere LLC управляет инфраструктурой на 95% основанной на Линукс, он читает лекции по OSS и интернет-сервисам, являлся директором Tacoma Linux User Group.

Contents at a Glance
Chapter 1: Starting with SUSE . . . . . . . . . . . . . . . . .. . . .1
Chapter 2: Installing openSUSE and Adding Software . . . .11
Chapter 3: Using the Shell . . . . . . . . . . . . . . . . . . . . . .41
Chapter 4: Working with Files . . . . . . . .. . . . . . . . . . . . .59

Chapter 5: Manipulating Text . . . . . . . . . . . . . . . . . . . . .79
Chapter 6: Playing with Multimedia . . . . .. . . . . . . . . . . . .97
Chapter 7: Administering File Systems . . . . . . . . . .. . . . .111
Chapter 8: Backups and Removable Media . . . . . . . . . . . .139
Chapter 9: Checking and Managing Running Processes . . .155
Chapter 10: Managing the System . . . . . . . . . . . . . . . . .173
Chapter 11: Managing Network Connections . .. . . . . . . . .195
Chapter 12: Accessing Network Resources . . . . . . . . . . .215
Chapter 13: Doing Remote System Administration . . . . . .235
Chapter 14: Locking Down Security . . . . . . . . . .. . . . . . .251
Appendix A: Using vi or Vim Editors . . . . . . . . . . . . . . . .265
Appendix B: Shell Special Characters and Variables . . . . .273
Appendix C: Getting Information from /proc . . . . . . . . . .277
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .283

Архив tar.bz2
Размер 1.85 MB

rapidshare (http://rapidshare.com/files/110975683/slt1k_c.tar.bz2)
letitbit (http://letitbit.net/download/6b376d937351/slt1k-c.tar.bz2.html)

xcedz
18.07.2008, 05:06
Linux-Unix cheat sheets - The ultimate collection

http://www.scottklarr.com/topic/115/linux-unix-cheat-sheets---the-ultimate-collection/

Озя
13.01.2009, 16:15
огромный список самых важных нужных и часто используемых команд (http://terminals52.7bb.ru/viewtopic.php?id=540)

Solide Snake
23.01.2009, 03:04
Сброс пароля пользователя root в Linux

При загрузке в grub, в его меню

Нажимаем клавишу ' e ' для редактироварания, Находим строку типа:

kernel /boot/vmlinuz-x.x.x-x-x root=/dev/xda1 ro

Меняем её на

kernel /boot/vmlinuz-x.x.x-x-x root=/dev/xda1 rw init=/bin/bash

Нажимаем 'Enter'.

Далее нажимаем клавишу 'b' для загрузки.

Система загрузится в консоль с правами root.

root@(none):/#

root@(none):/# passwd
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

root@(none):/#

Перезагружаемся.

Вот и все.

[com]
23.01.2009, 07:18
Электронный голос зачитывает мануал -)
man ls | festival --tts
хороший синтезатор голоса, только русских словарей к нему не нашел, видать плохо искал =\

venom_aerocore
11.02.2009, 14:36
Как через route или ifconfig прописать маску подсети и гейтаваей?

И днс адреса
Во всех ли дистрибутивах присутствует resolv.conf?

neval
11.02.2009, 15:23
ifconfig add <интерфейс> <IP> netmask <MASK>
route add default gw <IP>

resolv.conf есть во всед дистрибутивах

Adeliae
02.04.2009, 00:40
Morph, удалил файл?
возможно в его имени пробелы - тогда нужно экранировать их обратным слэш, возможно это резервная копия файла с чуть другим именем (~ или . в начале) - простые причины, но может быть и так.

Adeliae
03.04.2009, 19:23
file - показывает информацию о файле, очень полезная команда.

liquidcube
28.06.2009, 19:59
Вот увидел про shred сообщение - спешу поделиться :
есть во всех дистрах,
вырезка из мана
shred - overwrite a file to hide its contents, and optionally delete it
Но, в "Linux.Справочное руководство"(точного названия не помню, давно читал) было сказано, что эта команда удаляет файл, а потом еще и n-раз перезаписывает его место.
Иногда ооченнь полезно.

farex
31.07.2009, 18:22
Быть может боян, извеняюсь всю тему не читал
Хорошо выполнинная таблица по командной строке (с описаниями)
-->
http://www.linuxguide.it/command_line/linux_commands_ru.html
<--

drim
15.09.2009, 12:02
grep - одна из самых полезных команд.
Используйте ключи -lir если надо найти файлы, содержащие заданную строку.
Очень удобно при просмотре вложенных конфигов - особенно на серверах, где приложение настраивал кто-то до вас

$ grep -lir /etc/* somesettings.conf
выдаст список конфигов, куда инклудиться somesettings.conf

Aximand
01.10.2009, 17:27
Нашел классную утилитку at. Выполняет заданные команды в заданное время, например:
echo "mpc play" | at 7:30
Очень удобно, использую как будильник)