Глупый пингвин робко прячет, умный - смело достает...

Есть совет? Добавьте его сюда!

Долго ковырялся с компом и что-то настраивал? Не смог наскоком найти ответ на вопрос в Гугле? Тогда добавь сюда свой совет, мы будем рады его опубликовать! Неважно, если это "рецепт по боданию" с каким-то из вариантов Linux, Unix или другого СПО проекта. Опубликуем, поможем улучшить и сохранить сию крупицу знания!

Жмите сюда, чтобы ДОБАВИТЬ СОВЕТ

Регистрация на сайте необязательна, но чтобы не возиться с captcha, рекомендуем все-таки зарегистрироваться или войти по OpenID. По любым вопросам обращайтесь в наш форум или стучитесь в обратную связь.

Благодарим за визит и отклики!

4
Ваша оценка: Ничего Рейтинг: 4 (3 голоса)

multiple ssh private keys

Про безпарольную авторизацию в ssh с помощью ключей не пишет разве что ленивый. Зачастую бывает нужно использовать разные ssh-ключи для различных групп серверв/хостов.
Например по ролям, территориальному признаку, логину ... ну и вообще..

Набирать каждый раз полный путь к файлу с ключем, а главное помнить в каких случаях какой ключ нужен - лень. Да, лень двигатель прогресса: видел как люди пишут алиасы на такие ssh-команды (сам такой), а еще пишут про ssh-agent. но в этом типсе пример работы с несколькими ключами, и распределеним каким ключем на какой хост ходить.

собственно типс - перевод статьи "multiple ssh private keys" Karanbir Singh

5
Ваша оценка: Ничего Рейтинг: 5 (2 голоса)

устроить перезагрузку PC\2 клавы, мыши

$ [b]echo -n "reconnect" > /sys/bus/serio/devices/serioX/drvctl[/b]

где Х - номер вашей мышки на клавиатуре (у меня две, одна эмулируется клавиатурой).

0
Ваша оценка: Ничего

Вывести n-ую строку из файла.

Понадобилось мне вывести n-ую строку на экран. Долго не думая родилось:

#!/bin/bash
egrep . --max-count=$1 | tac | egrep . --max-count=1
1.333335
Ваша оценка: Ничего Рейтинг: 1.3 (3 голоса)

Экпорт списка RSS-потоков из Opera

$ [b]grep 'Search Text=http://' ~/.opera/mail/index.ini[/b]
0
Ваша оценка: Ничего

telnet без expect

Пример соединения по telnet и отправка команды

$ [b](sleep 3; echo username; sleep 3; echo password; sleep 5; echo "command"; sleep 3; echo "exit") | telnet hostname port[/b]
0
Ваша оценка: Ничего

Поиск одинаковых файлов

программа fdupes может найти одинаковые файлы. сравнения происходят по длине файла и md5-хеш суммы

$ [b]fdupes -r mp3/[/b]

найдет все дублирующие файлы в директории mp3

$ [b]fdupes -r -d video/[/b]

найдет все дублирущиеся файлы в директории video/ и предложит удалить дубляжи. будте осторожны не удалив лишнего Ж:-)

очень полезно при чистке архивов/mp3/video...

UPD:
Ну и как всегда, велосипед в студию! Ж:-)

$ [b]find . -type f -print0 | xargs -0 md5sum | sort | uniq -w 34 -D[/b]
5
Ваша оценка: Ничего Рейтинг: 5 (1 vote)

Способ удобнее отследить падения пинга.

Придумал хороший способ пингования.

$ [b]ping ip | cat -n[/b]

Смысл, что слева от пинга каждая строка теперь имеет свой номер. Удобно, когда надо отследить, что пинг пропал. Линукс, в отличие от Windows не сообщает, если пинг отвалился.

2
Ваша оценка: Ничего Рейтинг: 2 (1 vote)

После ребута компа виснет mcabber?

Если после подписания системы и ребута виснет mcabber, то посмотрите в файлах истории, нет ли мусора в конце файла аккаунта, с которым вы общались в момент краша. Мне помогло.

0
Ваша оценка: Ничего

Информация о VCS (Version Control Systems) в приглашении zsh

При переходе на git пришла в голову мысль что было бы удобно видеть в приглашении zsh в каком состоянии локальный репозиторий.
Всевозможные rebase, am, merge и подобное сбивает с толку.
Сказано - сделано. Написал собственный велосипед. Потом нашел еще [url=http://www.jukie.net/~bart/blog/20071219221358]парочку[/url] [url=http://github.com/jcorbin/zsh-git/tree/fca801c9978e17d7fba536e5461ade4d1238a046]велосипедов[/url] в интернете, разобрал на запчасти и прикрутил к своему велосипеду новенькие колеса и смазал педали. Но вскоре, к своему стыду, в мане zsh увидел уже готовый даже не велосипед, а целый танк с экипажем. И собакой в придачу.

Вот он

$ [b]PAGER=less LESS='-p VERSION CONTROL SYSTEMS' man zshall[/b]

Творчески переосмыслив пример из мана вот что получилось

autoload -Uz vcs_info
 
# включаем только git svn svk cvs. Возможные VCS можно посмотреть командой vcs_info_printsys
zstyle ':vcs_info:*'              enable            git svn svk cvs
 
# домашняя директория из CVS репозитория. Исключаем ее и некоторые директории из домашнего репозитория
zstyle ':vcs_info:*'              disable-patterns "$HOME(|/.*|/bin)"
 
# Модифицированная версия из man zshcontrib, добавлены флажки staged и unstaged изменений
zstyle ':vcs_info:*'              actionformats    '%F{5}(%f%s%F{5})%F{3}%m%F{5}[geshifilter-questionmarkphp]F{2}%b%F{3}|%F{1}%a%F{5}][%B%F{yellow}%c%F{red}%u%%b%F{5}]%f '
zstyle ':vcs_info:*'              formats          '%F{5}(%f%s%F{5})%F{3}%m%F{5}[%F{2}%b%F{5}][%B%F{yellow}%c%F{red}%u%%b%F{5}]%f '
zstyle ':vcs_info:(sv[nk]|bzr):*' branchformat     '%b%F{1}:%F{3}%r'
 
zstyle ':vcs_info:*'              check-for-changes true
zstyle ':vcs_info:*'              get-revision      true
 
setopt prompt_subst
RPROMPT=$'${vcs_info_msg_0_}%b%F{cyan}%T%f'

Ну и как всегда: Live demo! Ж:-)[/geshifilter-questionmarkphp]

0
Ваша оценка: Ничего

Автоматическое копирование текста из vim в буфер обмена иксов

Постепенно продвигаясь в пути просветления избавления от мышки захотелось мне копировать текст в vim и вставлять в другом vim/терминале/программе без мышки.

Необходимые знания уже имелись и осталось тренировать пальцы в [url=/vim-paste-to-x11]копировании текст в буфер обмена X11[/url] используя специальные регистры [b]"*[/b] и [b]"+[/b], и вставке в других программах [url=/xterm-rxvt-urxvt-paste-by-shift-ins]с помощью Shift-Ins[/url].

Но что бы не ломать себе пальцы, каждый раз указывая нужные регистры, то лучше связать безымянный регистр [b]""[/b] с буфером обмена X11. Тогда любые команды работающие с безымянным буфером по умолчанию ([b]yy[/b], [b]p[/b], [b]dd[/b] и подобные) будут работать с системным буфером обмена.

:set clipboard=unnamed,exclude:cons\\\|linux

[list]
[*][url=http://linsovet.com/vim-paste-to-x11]Копирование текста из vim в буфер обмена иксов[/url]
[*][url=http://linsovet.com/xterm-rxvt-urxvt-paste-by-shift-ins]Вставка текста из клипбоарда в терминале без мышки[/url]
[*][url=http://linsovet.com/vim-external-clipboard-paste]Вставка в vim текста из клипбоарда[/url]
[/list]

0
Ваша оценка: Ничего

Просмотр man-ов в Firefox

Смотреть man-ы и искать по ним можно в Firefox при помощи дополнения FireMan ( https://addons.mozilla.org/en-US/firefox/addon/8709 ).

0
Ваша оценка: Ничего

Как смотреть сетевой трафик в Wireshark, записанный в tcpdump (решаем проблему Wireshark: Packet size limited during capture)

Иногда нужно записать сетевой трафик, чтобы потом спокойно разобраться в том, что же все-таки происходит в сети. Wireshark предоставляет отличный графический интерфейс для просмотра и анализа пакетов. Он также может записывать трафик, но не всякий сервер имеет графическую среду.

Поэтому на помощь приходит текстовая утилита tcpdump. Ее файлы совместимы с wireshark. Запуская ее с параметром -w filename, мы получаем файл, содержащий нужный нам сетевой трафик. К сожалению, по умолчанию в tcpdump каждый пакет ограничивается 96ю байтами (которых, как правило, достаточно для анализа любых пакетов). Однако если нужно залесть глубже и смотреть всё содержимое пакетов, нужно использовать команду -s size (где size - размер пакетов, которые нужно ловить). Для обычного ethernet'а размер пакетов равен 1500, для "разогнанного" гигабитного etherneta - порой до 65к.

Итого, имеем следующую команду:

# tcpdump -s 1500 -w filename

И используем ее для того, чтобы можно было создать полный дамп сетевого трафика, который можно смотреть в Wireshark без сообщений вида [b]Packet size limited during capture[/b]

0
Ваша оценка: Ничего

Боремся с предупреждениями при статической линковке glibc в Linux

[b]Этот совет вводит в заблуждение и ошибочен. -all-static линкует все динамически, в чем можно убедиться, выполнив ldd <наша программа>. Возможно, в комментариях кто подскажет как избавиться от динамической зависимости от glibc?[/b]

Несмотря на то, что статическая линковка в Linux это зло, иногда и ко злу приходится приобщаться по разным причинам... Если вы пытаясь слинковать все динамически получаете следующее или похожее предупреждение:

/usr/lib/gcc/i686-pc-linux-gnu/4.4.1/../../../libcrypto.a(dso_dlfcn.o): In function `dlfcn_load':
(.text+0x7b6): warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/lib/gcc/i686-pc-linux-gnu/4.4.1/../../../libssh.a(misc.c.o): In function `ssh_get_user_home_dir':
(.text+0x262): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/lib/gcc/i686-pc-linux-gnu/4.4.1/../../../libssh.a(connect.c.o): In function `getai':
(.text+0x663): warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking

что свидетельствует о том, что во время запуска программы все равно потребуется динамическая библиотека, поменяйтя ключ при линковке (обычно переменная LDFLAGS в Makefile) -static, на -all-static и возрадуйтесь! Впрочем не забывайте подключить также -lc, -lm и подобные статические библиотеки.

0
Ваша оценка: Ничего

Синхронизация mp3 файлов на плеере с fat32

Купил [url=http://www.archos.com/products/imt/archos_5/specs.html]портативный девайс для видео и музыки с большим винчестером[/url].
На плеере fat32 и для синхронизации директории с музыкой на компьютере и девайсе пришлось подобрать ключики к rsync.

$ [b]rsync -a -v --update --stats --human-readable --8-bit-output --fuzzy --inplace --size-only --whole-file ~mp3/ /media/archos/Music[/b]

В директории ~mp3 находится музыкальный архив, в /media/archos/Music подмонтирована директория для музыки плеера.

0
Ваша оценка: Ничего

Загрузка CD/DVD из-под GRUB, LILO или Grub4Dos

Можно загрузить загрузочный (El Torito) CD или DVD через GRUB, LILO или Grub4Dos. Это может быть полезно, если нужно загрузиться с CD или DVD, но биос этого не поддерживает. Или чтобы поставить пароль на возможность загрузки с CD или DVD отдельно, независимо от пароля на биос.

5
Ваша оценка: Ничего Рейтинг: 5 (1 vote)

Оптимизация канала для ssh соединения.

Обнаружил что за одну минуту работы с ssh через GPRS соединение у меня уходит до 750 кБ в зависимости от режима работы.
И решил я это дело прооптимизировать используя сжатие канала.

0
Ваша оценка: Ничего

Как перечитать открытый файл в vim

Если вы редактируете файл, и его изменила какая то внешнаяя программа то его можно перечитать с помощью команды [b]:edit[/b] без параметров или просто [b]:e[/b]. Если файл уже изменен вами локально, то можно потерять изменения перечитав файл с помощью [b]:e![/b].
Не очевидно, и удобно для тех кто пользуется cvs, svn, git и подобное.

Опции в тему

:[b]help autoread [/b] # автоматически перечитывать файл при его изменении 
:[b]help noconfirm[/b] # опция вкл./выкл. предупреждение о потере несохраненных данных
 
:[b]setlocal autoread[/b] # установить опцию автосчитывания для локального буфера
:[b]setl ar [/b]          # тоже самое, только укороченный вариант

Учтите что автосчитываение происходит только в случае пользовательских событий, тоесть пользователь работает с редактором. Хотя если хочется превратить vim в аналог [b]tail -f[/b] можно сделать так:

: [b]set nolz | while 1 | e | redraw | $ | sleep 1 | endw[/b]
0
Ваша оценка: Ничего

Полный аудит действий пользователей на файловом сервере под управлением SAMBA

Возникла необходимость видеть историю всех действий пользователей на файловом сервере под управлением SAMBA

после долгого чтения гугла пришел к выводу, что это бесполезно и погрузился в чтение манов самбы.
И вот какое решение родилось:

5
Ваша оценка: Ничего Рейтинг: 5 (3 голоса)

vim-like режим редакторования форм в vimperator

В vimperator помимо возможности [url=/firefox-vimperator-hotkeys-call-external-editor]вызова редактора[/url] для редактирования форм, существует (пока что не документированный) встроеный vim-like режим. Для того что бы в него войти нужно нажать [b]ctrl-t[/b], выйти естественно [b]esc[/b].

Не документирован он потому что не допилен до конца, хотя вполне подходит для использования (есть даже поддержка vim-мовских абривиатур :ab)

0
Ваша оценка: Ничего

Quote

18:15 <+`L`> поднимите руку, кто полностью прочитал GPL?
18:16 <%iATlevsha> во валит

- #freebsd@RusNet

Вход для пользователей

Последние комментарии

Весь материал Главное
Только советы Только Советы
Цитат*nix Цитат*nix
Дневники Дневники
Комментарии Комментарии