bash

Подключение по ssh с x11 forwarding по умолчанию

Я очень часто подключаюсь к разным линукс машинам с помощью вот такой команды:

ssh host -X -C

  • -X — включается проброска x11 трафика
  • -C — осуществляется сжатие трафика

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

Вообщем, мне надоело каждый раз вводить параметры, и я решил один раз разобраться, как сделать так, чтобы это все было по умолчанию. Ответ нашелся в man 5 ssh_config. Всего-то нужно создать файл ~/.ssh/config, следующего содержания:

ForwardX11 yes
Compression yes

UPDATE 24.03.2009 — изначально я писал, что в файл ~/.ssh/config стоит писать так же CompressionLevel 9, но это неправильно. Вот фрагмент man ssh: Compression is desirable on modem lines and other slow connections, but will only slow down things on fast networks. . Действительно, с этой настройкой работает медленее, так что ее лучше не указывать.

Tags: , ,

Sunday, March 22nd, 2009 Uncategorized Comments Off

Отслеживаение подключенных пользователей

Возникла задача — оперативно узнать, подключился ли пользователь по ssh к linux машине.

С помощью команды who можно элементарно узать, кто сейчас подключен:

bessarabov@server:~$ who
bessarabov pts/0 2008-08-06 15:35 (1.1.1.1)

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

В bash существует возможность писать циклы. Чуть-чуть разобратся и получается вот такая команда (она бесконечно запускает who (останавливается по ctrl+C)):


$ until false; do who; done

О! Почти то, что нужно. Немного причесываю и готово:


$ until false; do date; who; echo “”; sleep 1; done

Tags: ,

Wednesday, August 6th, 2008 Uncategorized 5 Comments

My bash history

Наткнулся на интересный пост.

Следующая консольная команда linux-а отображает список разных программ, которые запускал пользователь, с указанием количества их запуска:

history 1000 | awk '{a[$2]++}END{for(i in a){print a[i] " " i}}' | sort -rn | head -n 50

Вот мой вывод этой команды на моей домашней машине (все что меньше 10 я показывать не стал):

123 cd
85 sudo
59 ls
49 vim
31 svn
25 ping
22 clear

Tags: ,

Saturday, July 19th, 2008 Uncategorized Comments Off