IPB

Здравствуйте, гость ( Вход | Регистрация )

 Forum Rules ПРАВИЛА ФОРУМА. ЧИТАТЬ ВСЕМ !
> Команды, приемы работы, мелочи FreeBSD, Тут собираем все мелочи полезные в раб.
SergeyKa
12.08.2003 - 11:40
Сообщение #1



The NetWork Assistant
Group Icon
Группа: Старейшины
Сообщений: 342
Регистрация: 18.02.2003

Пользователь №: 6704




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

Начнем с азов.

ls - вывод на экран содержимого текущего каталога. Ключ -l (ls -l) выводит полную информацию содержащую права доступа время создания размер и т.д.

pwd - показать текущий каталог

cp <файл источник> <выходной файл> - копирование файлов. Пример pc /home/pool/file /home/pool/file1


chmod <набор прав> <файл или каталог> - изменение прав доступа к файлам и каталогам. Можно использовать маску.
0 --- Ничего не разрешено
1 --x Нельзя читать и писать, разрешено исполнять
2 -w- Нельзя читать и исполнять, разрешено писать
3 -wx Нельзя читать, разрешено писать и исполнять
4 r-- Разрешено читать, нельзя писать и исполнять
5 r-x Разрешено читать и исполнять, нельзя писать
6 rw- Разрешено читать и писать, нельзя исполнять
7 rwx Разрешено все

Пример: chmod 755 rimin.conf

chown <владелец>:<группа> <файл> - изменение владельца игруппы
Пример: chown mail:mailuser help.con

mkdir - создание директории (пример: mkdir ddf - создаст в текущем каталоге директорию ddf)

mount_msdos /dev/fd0 /mnt - смонтировать флопи формата ДОС в папку /mnt
umount /dev/fd0 - размонтировать флопи

tar xzvf <имя файла>.tar.gz - разархивировать tar.gz
bunzip2 -x -f file.tar.bz2 - разархивировать file.tar.bz2

top - посмотреть работу процессов в реальном времени ( -9 <номер> убить процесс)

ps axu - посмотреть работающие процессы (в сочетании с |grep можно найти необходимый процесс - например ps axu | grep sshd )

pwd_mkdb -p /etc/master.passwd - обновить базу пользователей ( пользователей корректировать в файлах /etc/master.passwd и /etc/passwd)

passwd <имя пользователя> - сменить пароль для пользователя

su <username> -c <команда> - запуск комманды от имени другого пользователя

grep наиболее часто используемая команда для фильтрации лишнего - оставляет в выходном потоке только строчки с совпадением с указаным ключем один из методов использования выше на пару строк, другой grep <строка> <файл> - например grep root /usr/master.passwd - выведет две строки root, toor.

less - вывод построчно. Для прокрутки использовать стрелки, для выхода - q. Пример less /etc/masster.passwd или ps axu | less

more - вывод по страницам например man ps | more

ln -sf /usr/home /home создание символических ссылок (после создания ссылки команда cd /home осуществит переход в папку /usr/home)

man natd | col -b > /floppy/natd - вывод мана в файл без управляющих символов (Jacky@ :) )
User is offlineProfile Card PM
Go to the top of the page
+
 
Reply to this topicStart new topic
Ответов(1 - 6)
SergeyKa
12.08.2003 - 12:08
Сообщение #2



The NetWork Assistant
Group Icon
Группа: Старейшины
Сообщений: 342
Регистрация: 18.02.2003

Пользователь №: 6704




Перезагрузка процессов:
Очень часто необходимо перезапустить процесс после изменения каки то баз или изменения настроек. В общем случае это выглядит так -
находим номер процесса (допустим sshd)
ps axu | grep sshd
root 5614 0.0 0.7 2300 1844 ?? Is 12:12PM 0:00.20 /usr/local/sbin/sshd
Номер процесса 5614
Убиваем этот процесс и запускаем по новой (некоторые процессы автоматически запускаются снова)
kill 5614
пожно убить процесс зная его pid файл. Например так
kill `cat /var/run/sshd.pid`(кавычки обратные)
/usr/local/sbin/sshd

Некоторые процессы нельзя убивать непосредственно. Тогда можно осуществить "мягкую" перезагрузку -
kill 1
Система спросит вас про шелл по умолчанию, нажмите Enter. Когда вы увидите в качестве приглашения решетку (#), скажите
exit
Система заново запустится.

Если знаем имя службы (процесса) можно так

killall -HUP sendmail

После изменений баз squidGuard необходимо выполнить две команды -
squidGuard -C all
squid -k reconfigure

После изменения /usr/local/etc/squid/squid.conf
достаточно выполнить только последнюю команду.
User is offlineProfile Card PM
Go to the top of the page
+
jacky
25.09.2003 - 11:08
Сообщение #3


No Avatar
Silver Member
Group Icon
Группа: VIP
Сообщений: 330
Регистрация: 4.10.2002

Пользователь №: 1307




Время непрерывной работы компа
Тут понадобилось посмотреть сколько же мой комп работал с последней перезагрузки (было подозрение, что ночью отключают электричество):
uptime
4:41PM up 20:50, 1 user, load averages: 0.00, 0.00, 0.00
правда потом выяснил, что эту же инфу дает top в первой строке:
last pid: 1376; load averages: 0.00, 0.00, 0.00 up 0+19:01:50 13:16:40

Получить список устройств на PCI шине
Очень полезная команда, например узнать что за звуковуха или сетевуха у вас.
pciconf -lv
rl0@pci0:10:0: class=0x020000 card=0x813910ec chip=0x813910ec rev=0x10 hdr=0x00
....vendor = 'Realtek Semiconductor'
....device = 'RT8139 (A/B/C/8130) Fast Ethernet Adapter'
....class = network
....subclass = ethernet
none1@pci1:0:0: class=0x030000 card=0x63061039 chip=0x63061039 rev=0x2a hdr=0x00
....vendor = 'Silicon Integrated Systems (SiS)'
....device = 'SiS530/620 Integrated 3D VGA Controller'
....class = display
....subclass = VGA
Покрайней мере теперь я знаю что видео у меня не установлено...

SergeyKa
У меня к тебе такой вопрос:
Хочу например вывод команды tcpdump направить в файл, или любой другой команды, например ntpdate -d xxx и при помощи этой конструкции не всегда получается:
tcpdump -i rl2 host xxx | tcpshow > tcp.log - В данном случае вообще ничего не выводиться ни на экран ни в файл (ключи не все указал)
Знаю что есть команда которая и на экран выдает и в файл пишет, но никак не могу вспомнить ??? Подскажи

Сообщение было отредактировано jacky: 25.09.2003 - 11:10


--------------------
Мир был бы прекраснее, если бы ВСЕ женщины были замужем, а ВСЕ мужчины холостяками.
Габриэль Оноре Марсель
User is offlineProfile Card PM
Go to the top of the page
+
SergeyKa
25.09.2003 - 11:50
Сообщение #4



The NetWork Assistant
Group Icon
Группа: Старейшины
Сообщений: 342
Регистрация: 18.02.2003

Пользователь №: 6704




jacky
Цитата
У меня к тебе такой вопрос:
Хочу например вывод команды tcpdump направить в файл, или любой другой команды, например ntpdate -d xxx и при помощи этой конструкции не всегда получается:
tcpdump -i rl2 host xxx | tcpshow > tcp.log - В данном случае вообще ничего не выводиться ни на экран ни в файл (ключи не все указал)
Знаю что есть команда которая и на экран выдает и в файл пишет, но никак не могу вспомнить ??? Подскажи


Стандартный редирект для UNIX cat < bag.txt > tin.txt, программок никаких не знаю. Как правило хватает вывода в одно место :)
User is offlineProfile Card PM
Go to the top of the page
+
CyberVlad
25.09.2003 - 12:52
Сообщение #5



Гость










Дополнение насчёт перезапуска процесса.
# killall -1 sshd
решит все вопросы :)
Go to the top of the page
+
try
25.09.2003 - 19:29
Сообщение #6


No Avatar
Member
**
Группа: Пoльзователь
Сообщений: 27
Регистрация: 18.09.2003

Пользователь №: 15972




Перенаправление ввода-вывода



Команды и списки могут содержать операторы < и > - перенаправления стандартного ввода и стандартного вывода соответственно.

Например:

# ps -ax > /etc/proc
выводит текущее состояние процессов не на экран, а в файл /etc/proc. Если к этому моменту такого файла не было, то он будет создан. Если он существовал, то его старое содержимое будет уничтожено новой информацией.

Для то, чтобы не уничтожать содержимое файла, а добавить новую информацию (в конец файла), нужно использовать оператор `>>:

# ps -ax >> /etc/proc
Кроме того, существует стандартный вывод ошибок. Он имеет дескриптор 2. Т.е. если мы не хотим получать сообщения об ошибках на стандартный вывод, то можно использовать перенаправление таким образом:

# cat /etc/proc 2>err.log (ошибки, если возникнут, будут выведены в файл err.log) либо

# cat /etc/proc 2>/dev/null (ошибки будут выведены <никуда>, их посмотреть будет невозможно).

Ввод перенаправляется аналогичным образом. Например, команда

# mail bob@com.com < /home/mail.txt

отправит содержимое файла /home/mail.txt по адресу bob@com.com.

Оператор << означает, что ввод для данной команды находится <ЗДЕСЬ>. Пример:

# mail bob@com.com << end
Hello, Bob!
end
По этой команде в тело письма войдет все, что встретится до указанного нами ограничителя ввода end.
User is offlineProfile Card PM
Go to the top of the page
+
jacky
9.10.2003 - 11:13
Сообщение #7


No Avatar
Silver Member
Group Icon
Группа: VIP
Сообщений: 330
Регистрация: 4.10.2002

Пользователь №: 1307




SergeyKa
try
Цитата
Знаю что есть команда которая и на экран выдает и в файл пишет, но никак не могу вспомнить ???

Да для перенаправление стандартного в/в >log это то что нужно, но я разобрался с командой tcpdump и выяснил, что она как-то хитро буферизирует вывод, но при этом на экран все выводит, а в файл ничего, точнее при указании >log вообще ничего никуда не выводиться (ждал пять минут, может действительно буферизация действует, но ничего).
Так вот есть следующая команда:
# начинается запись в файл my.log всего того, что на экране и на клаве !!!
script my.log
# теперь пускаю свой tcpdump вывод на экран идет
# прерываю tcpdump [Ctrl+C]
# для прекращения записи всего подряд в файл, нужно выполнить
exit

Все смотрю и радуюсь !!! :D


--------------------
Мир был бы прекраснее, если бы ВСЕ женщины были замужем, а ВСЕ мужчины холостяками.
Габриэль Оноре Марсель
User is offlineProfile Card PM
Go to the top of the page
+
Реклама

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0 -

 



- Текстовая версия Сейчас: 28.03.2024 - 14:34
]]> ]]>
]]> Яндекс.Метрика ]]>