хочу сюди!
 

Марта

48 років, козоріг, познайомиться з хлопцем у віці 50-60 років

Замітки з міткою «ubuntu»

Раскрашиваем bash в Ubuntu.

Возникла идея раскрасить консольку в Ubuntu. Для красоты и для удобства восприятия. Принялся за поиски готовых решений, но как-то не спешат пользователи делиться своими конфигами. Решил - буду первым. При работе очень помогли такие материалы:
http://goo.gl/Df6tv
http://goo.gl/n6BPv
http://goo.gl/wvKds
http://goo.gl/Vg3eT и
http://goo.gl/vWwii .
Установлен grc для раскраски вывода комманд, таких как ping, traceroute и некоторые другие. Говорят - можно добавить свои алиасы. Я покуда не пробовал.
Делалось это на Ubuntu 13.04 c Unity DM.

Что получилось у меня - можно увидеть на скриншотах ниже. 
Как это реализовано: в файл ~/.bashrc (некоторых версиях Linux это может быть файл ~/.bash.profile) добавлено несколько строк кода.
_________________________________________________________

#Здесь задаём переменные цвета.
red="\[\e[1;33m\]"
yellow="\[\e[1;31m\]"
#Считываем eUID пользователя. Если не рут - устанавливаем цвет жёлтый, иначе - красный.
if [ `id -u` -eq "0" ]; then
    root="${yellow}"
else
    root="${red}"
fi
#Собственно строка приглашения bash. Именно здесь задаём цвета для каждого элемента.

PS1="\[\e[4;37m\][\t]\n\[\e[0m\]\[\e[1;36m\][${root}\u\[\e[1;34m\]@\h\[\e[1;32m\]\w\[\e[1;36m\]]\[\e[0m\]${root}\\$\[\e[0m\]"

#Алиасы для раскраски вывода команд с помощью grc.

alias ping='grc ping'
alias traceroute='grc traceroute'
alias make='grc make'
alias diff='grc diff'
alias cvs='grc cvs'
alias netstat='grc netstat'
alias logc='grc cat'
alias logt='grc tail'
alias logh='grc head'
alias less='less --RAW-CONTROL-CHARS'

_________________________________________________________


Цвета задаются перед управляющей последовательностью (как \t \n \w \u и т.п.). Всё, что идёт за кодом цвета - будет раскрашено если не ввести последовательность \[\e[0m\] , которая устанавливает после себя значения цветов и шрифтов по-умолчанию.

В общем вот так. Я не ставлю себе целью писать полноценный мануал, так как они написаны в ссылках, приведённых мной выше, Я лишь хочу поделиться готовым решением по раскраске ибо такового не нашёл.

P.S.: Если Вы пользуетесь командой "sudo su" - код для раскраски нужно будет добавить и в  /root/.bashrc






Ubuntu для телефонов

Компания Canonical анонсировала мобильную версию Ubuntu, которая основана на ядре и драйверах Android, но не использует виртуальную машину Java и обещает использовать «всю мощность телефона», сообщает The Verge. ОС будет поддерживать и ARM, и x86, и, как обещается, будет достаточно совместимой, чтобы производители Android-телефонов могли запустить её на своих устройствах с минимальной адаптацией.

Ubuntu для Android, анонсированная в феврале прошлого года, станет первым шагом к тому, чтобы эта новая экосистема появилась на устройствах, которые, по словам Марка Шаттлворта, однозначно появятся в течение этого года. Хотя о сотрудничестве с какими-либо операторами или производителями не было объявлено, первое мобильное устройство на Ubuntu для Android, как обещается, будет выпущено производителем Android-устройств „высокого класса“.

Телефоны на собственно Ubuntu обещаны к началу 2014 года, но компания намерена показать предварительные варианты в Лондоне, а образы платформы разработки будут доступны для Galaxy Nexus в течение ближайших нескольких недель. Это пока что единственное официально поддерживаемое устройство на данный момент.


Раздача интернета в Ubuntu через NAT

После того, как оволосатились винды на двух компьютерах, чистки реестра, прогонки антивирусами и прочими плясками с бубном, перевел свой компьютер на Ubuntu. Системой доволен. Пришлось конечно осваивать с нуля, после приличного времени проживания в форточках это было несколько забавно, но да не в том суть. Появиласть необходимость раздавать интернет со своей машины, ну а как это проще всего сделать? Конечно же настроить NAT. В убунту это делается достаточно просто. Необходимо настроить iptables, есть в убунте такая штука. Для начала посмотрим какие правила у нас в iptables прописаны, сделать это можно командами в консоли под root’ом: sudo iptables -L # iptables -L -t nat После чего включим NAT и настроим маршрутизацию: sudo iptables -t nat -A POSTROUTING -s 192.168.0.2 -j MASQUERADE sudo iptables -A FORWARD -i eth0 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT sudo iptables -A FORWARD -i eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT где 192.168.0.2 – клиентский ip, вместо него может стоять и диапазон адресов 192.168.0./24 eth0 – локальная сеть eth1 – интернет Следующим шагом сохраняем правила: sudo iptables-save и проверив все ли правильно записано сохраняем правила в файл: sudo sh -c "iptables-save > /etc/iptables.up.rules" Для того, чтобы правила запускались при загрузке системы создаем скрипт в папке /etc/network/if-up.d со следующим содержимым: #!/bin/sh iptables-restore < /etc/iptables.up.rules Так же необходимо добавить или раскомментировать строчку (если закомментирована) в файле /etc/sysctl.conf со следующим содержанием: net.ipv4.ip_forward = 1 Все должно заработать, по крайней мере у меня все прекрасно работает. Если возникнет необходимость очистить iptables, необходимо в консоли выполнить следующее: sudo iptables -F

sudo iptables -t nat -F

(c)  http://www.habrahabr.kz/blog/353.html

Удобства zsh

Z shell, zsh — одна из современных командных оболочек UNIX, может использоваться как интерактивная оболочка, либо как мощный скриптовой интерпретатор. Zsh является расширенным bourne shell с большим количеством улучшений.

К использованию zsh меня привел поиск удобного авто заполнения и поиска по истории. На FreeBSD, используя tсsh, я мог набирать множиство команд, они записывались в историю. Но занимаясь администрированием, вводить одно и тоже днями напролет надоедает и отнимает время. В tсsh реализовал фишку, в командной строке набираю
>find
и при нажатии стрелки вверх мне пречисляются разные варианты которые начинаются на find, выбираю с нужными ключами и только меняю искомое слово (набрал >cp и листаеш переход в нужный каталог и так с любыми словами и буквами, очень удобно). В Debian, используя оболочку tсsh, не смог это реализовать, поэтому перешел на zsh. В ней удалось реализовать и эту функцию и монго других полезностей.

Устанавливается
> aptitude install zsh

В домашнем нужно создать конфиг файлы. Я просто копировал из рутовых добавляя точку

[root|194]:/etc/zsh> ls
итого 48K
4,0K ./   12K ../  4,0K zlogin  4,0K zlogout  4,0K zprofile  4,0K zshenv   12K zshrc  4,0K zshrc_orig

[root|194]:/etc/zsh> cp zlogin /home/sasha/.zlogin
и так все остальные по аналогиии

[root|194]:/home/sasha>mv .zhistory
незабудте сменить владельца (вместо root)

Далее пример своего zshrc

[root|194]:/etc/zsh>vi zshrc

# my config --------------------------------------------------------------------------

# поиск в истории команд
autoload -U predict-on
zle -N predict-on
zle -N predict-off
bindkey "^X^Z" predict-on # C-x C-z
bindkey "^Z" predict-off # C-z
#----------------------------------------

# Path для поиска командой cd: то есть вместо cd $HOME/docs/editors/
# можно набирать просто cd editors
cdpath=(~/media ~/docs)

## Установка нормального поведения клавиш Delete, Home, End и т.д.:
case $TERM in
        linux)
bindkey "^[[2~" yank
bindkey "^[[3~" delete-char
bindkey "^[[5~" up-line-or-history
bindkey "^[[6~" down-line-or-history
bindkey "^[[1~" beginning-of-line
bindkey "^[[4~" end-of-line
bindkey "^[e" expand-cmd-path ## C-e for expanding path of typed command
bindkey "^[[A" up-line-or-search ## up arrow for back-history-search
bindkey "^[[B" down-line-or-search ## down arrow for fwd-history-search
bindkey " " magic-space ## do history expansion on space
;;
*xterm*|rxvt|(dt|k|E)term)
bindkey "^[[2~" yank
bindkey "^[[3~" delete-char
bindkey "^[[5~" up-line-or-history
bindkey "^[[6~" down-line-or-history
bindkey "^[[7~" beginning-of-line
bindkey "^[[8~" end-of-line
bindkey "^[e" expand-cmd-path ## C-e for expanding path of typed command
bindkey "^[[A" up-line-or-search ## up arrow for back-history-search
bindkey "^[[B" down-line-or-search ## down arrow for fwd-history-search
bindkey " " magic-space ## do history expansion on space
;;
esac
# Примечание: если, скажем, в KDE для konsole
# выбрать тип Linux console, необходимости
# во второй секции нет.

# Use hard limits, except for a smaller stack and no core dumps
unlimit
limit stack 8192
limit core 0
limit -s

# Установка alias'ов

alias df='df -h'
alias du='du -s * -h'
alias ls='ls -ashF --color=auto'
alias ll='ls -al --color=auto'
alias host='host -av'

### вывод только каталогов
alias lsd='ls -ld *(-/DN)'

alias grep='grep --color=auto'

# Ниже даны опции, относящиеся к функциям zsh,
# которыми собственно и определяется мощь этой оболочки
# Shell functions
setenv() { typeset -x "${1}${1:+=}${(@)argv[2,$#]}" }  # csh compatibility
freload() { while (( $# )); do; unfunction $1; autoload -U $1; shift; done }

# Where to look for autoloaded function definitions
fpath=($fpath ~/.zfunc)

# Autoload all shell functions from all directories in $fpath (following
# symlinks) that have the executable bit on (the executable bit is not
# necessary, but gives you an easy way to stop the autoloading of a
# particular shell function). $fpath should not be empty for this to work.
for func in $^fpath/*(N-.x:t); autoload $func

# automatically remove duplicates from these arrays
typeset -U path cdpath fpath manpath

# Указание путей к man-страницам.
manpath="/usr/man:/usr/share/man:/usr/local/man:/usr/X11R6/man:/opt/qt/doc"
export MANPATH

# Установка вида приглашения
#(я использую раскоментированый вариант, закоментированны другие, пробуйте, какой вам милее), а так же можите #переделать под себя как цвета, так и символы.

## Обычное приглащение вида ~%=>
## (каталог от домашнего - пользователь/root - стрелка)
#Простой
#PROMPT='%T [%n@%m]%~%:> '
#Цветной

#PROMPT=$'%{\e[0;37m%}%T %{\e[0;32m%}%n%{\e[0;31m%}@%{\e[0;37m%}%m%{\e[0;31m%}:%{\e[0;39m%}%~%{\e[1;33m%}>%{\e[0m%} '

#PROMPT=$'%{\e[1;33m%}%T %{\e[0;36m%}[%{\e[0;32m%}%n%{\e[1;31m%}&%{\e[0;37m%}%m%{\e[0;36m%}]%{\e[0;36m%}:%{\e[0;33m%}%~%{\e[0;36m%}>%{\e[0m%} '

PROMPT=$'%{\e[0;32m%}%T %{\e[0;36m%}[%{\e[0;36m%}%n%{\e[0;32m%}|%{\e[0;39m%}%m%{\e[0;36m%}]%{\e[0;32m%}:%{\e[0;39m%}%~%{\e[0;36m%}>%{\e[0m%} '


#PROMPT=$'%{\e[0;32m%}%T %{\e[0;36m%}[%{\e[0;36m%}%n%{\e[0;33m%}*%{\e[0m%}%m%{\e[0;36m%}]%{\e[0;36m%}:%{\e[0;39m%}%~%{\e[0;36m%}>%{\e[0m%} '

## Приглашения для второй линии мноргострочных команд (я не использую, но можите раскоментировать)
## вида #_строки>
#PROMPT2='%~%#=> '
#PROMPT2='%i%U> '


## Приглашение с правой стороны экрана вида (я не использую, но можите раскоментировать)
## 19:15 vc/5 (время - номер консоли)
#RPROMPT=' %T %y%b'
#RPROMPT=' %y'

# Переменные

## файл истории команд
## если не указан, история не будет сохраняться
## при выходе из сеанса
HISTFILE=~/.zhistory

## Число команд, сохраняемых в HISTFILE
SAVEHIST=5000

## Чucлo koмaнg, coxpaняeмыx в сеансе
HISTSIZE=5000
## Примечание:
## рекомендуются равные значения для
## SAVEHIST и HISTSIZE

DIRSTACKSIZE=20

# Опции истории команд

## Дополнение файла истрии
setopt  APPEND_HISTORY

## Игнopupoвaть вce пoвтopeнuя команд
setopt  HIST_IGNORE_ALL_DUPS

## Игнopupo лишние пpoбeлы
setopt  HIST_IGNORE_SPACE

## Удалять из файл истории пустые строки
setopt  HIST_REDUCE_BLANKS

# ----- TetriS -----

autoload -U tetris
zle -N tetris
bindkey ^T tetris

#-------------------

# ----------- Completion Styles ----------

# list of completers to use
zstyle ':completion:*::::' completer _expand _complete _ignored _approximate

# allow one error for every three characters typed in approximate completer
zstyle -e ':completion:*:approximate:*' max-errors
#    'reply=( $(( ($#PREFIX+$#SUFFIX)/3 )) numeric )'

# insert all expansions for expand completer
zstyle ':completion:*:expand:*' tag-order all-expansions

# formatting and messages
zstyle ':completion:*' verbose yes
zstyle ':completion:*:descriptions' format '%B%d%b'
zstyle ':completion:*:messages' format '%d'
zstyle ':completion:*:warnings' format 'No matches for: %d'
zstyle ':completion:*:corrections' format '%B%d (errors: %e)%b'
zstyle ':completion:*' group-name ''

# match uppercase from lowercase
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'

# offer indexes before parameters in subscripts
zstyle ':completion:*:*:-subscript-:*' tag-order indexes parameters

# command for process lists, the local web server details and host completion
#zstyle ':completion:*:processes' command 'ps -o pid,s,nice,stime,args'
#zstyle ':completion:*:urls' local 'www' '/var/www/htdocs' 'public_html'
zstyle '*' hosts $hosts


#unalias run-help
autoload run-help

Обзор антивирусов для Debian 4.0

На вопрос о том зачем антивирусник на debian, отвечаю сразу. Антивирусник нужен не так пока для UNIX подобных, а нужен для зашиты Windo-подобных, так как бывают сервера на UNIX-сах.

Цель обзора проста:
- показать какие есть антивирусные программы для (в данном случае Debian 4.0 подойдет и для Kubuntu, Ubuntu)
- какие компелируются и что самое важное потом работают )

Далее вкратце о программах: где найти, как установить, обновить и сканировать + небольшой тест анализ с вирусами
взятыми на обум от сюда
http://www.nvkz.kuzbass.net/as/

У каждого антивирусника свои примочки и в некоторых даже антиспам модули и т.д.
Установите, покопаетесь в конфигах "покурите" маны, в общем разберетесь и адаптируете под свою систему.

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

---------------------------------------------------------------------------------------------------------

AVG antivir

Скачать
http://free.grisoft.com/doc/5390/us/frt/0?prd=afl

Debian based distributions (Debian, Ubuntu)
такой вот деб пакет
avg75fld-r49-a1130.i386.deb

Установка
deb:/dpkg -i avg75fld-r49-a1130.i386.deb

после установки запустить типа лицензию )

deb:/opt/grisoft/avggui/bin/avggui_update_licinfo.sh

Запустите обновления, ключ "-o" - означает онлайн

deb:/opt/grisoft/avg7/bin/avgupdate -o
лог
deb:/opt/grisoft/avg7/var/update/log

Сканирование, если  / сканирует все от корня
или указать путь к папке

deb:/opt/grisoft/avg7/bin/avgscan /
deb:/opt/grisoft/avg7/bin/avgscan /home/hosting/team

Infected files: 32 вируса из 36 вирусов и 36 архивов с вирусами

Архивы по умолчанию не просек, наверно нужон какой то ключик.


---------------------------------------------------------------------------------------------------------

Avast antivir

Скачать
http://www.avast.com/eng/download-avast-for-linux-edition.html
avast! Linux Home Edition (DEB package)

Дока
http://files.avast.com/files/datasheets/linux-rus.pdf

Регистрация
http://67.228.112.195/eng/home-registration.php?PHPSESSID=fb4b4a3e197844995dd1389b2b3666b0&amp;lang=RUS

Установка
deb:dpkg -i avast4workstation_1.0.8-2_i386.deb

Запускаем
deb:/usr/bin/avast
Вводим регистрационный ключ (который получили по почте)

Сканирование
deb:/usr/bin/avast /
сканирует весь диск

deb:/usr/bin/avast /home/team
сканирует папку team и ее подкаталоги

deb:avast /home/team > logskan.txt

сканирует папку team и запишет результат в файл logskan.txt

Infected files: 72 вирусов из 36 вирусов и 36 архивов с вирусами



---------------------------------------------------------------------------------------------------------

Avira AntiVir® PersonalEdition Classic

http://www.free-av.com/


Скачать
http://www.free-av.com/en/download/download_servers.php

Скачать лицензию free
http://www.antivir-pe.com/freet/ind...ain=free-av.com


Установка прикольная, куча вопросов )

deb:tar xzf antivir-workstation-pers.tar.gz
deb:cd antivir-workstation-pers-2.1.11-21
deb:./install

Указываем путь к файлу с лицензией
Enter the path to your key file: [hbedv.key] /home/alexsandr/Avira_antivir/hbedv.key enter

Would you like to install the internet update daemon? [n] y enter

Would you like to create a link in /usr/sbin for avupdater ? [y] y enter

Would you like the internet update daemon to start automatically? [y] y enter

How should AvGuard be installed? [n] enter

Would you like to install the GUI (+ SMC support)? [y] enter

Would you like to configure the AntiVir updater now? [y] enter

Would you like email notification about updates? [n] enter

Would you like the updater to log to a custom file? [y] enter

? [/var/log/avupdater.log] enter

How often should AntiVir check for updates? [2] enter

Does this machine use an HTTP proxy server? [n] enter

Save configuration settings? [y] enter

Would you like to apply the new configuration? [y] enter

Запуск обновлений
deb:antivir --update

Сканировать все

deb:antivir /

Infected files: 72 вирусов из 36 вирусов и 36 архивов с вирусами


---------------------------------------------------------------------------------------------------------

ClamAV

deb:apt-get install clamav

Вот тут то есть небольшая трабла, антивир не плохой, но мне не понравилась система поддержки антивирусных баз предыдущих версий.
Дело вот в чем, устанавливается version: 0.90.1, для того что бы скачать обновления хочет версию version: 0.91.2
Обновления портов результата не дали, таже version: 0.90.1
В инете нашел version: 0.91.1 (http://www.y2k.it/clamav/)

но это тоже не выход, так как при обновлении баз все равно хочет version: 0.91.2
Может она и обновляется, но как то странно, до конца не профиксил, оставлю последователям )
В последствии, даже если и найти в просторах нужную версию, то не всегда получается ее собрать из за множества зависимостей. Я был как то удовлетворял пару дней зависимости и собрал 0.92.3, а на следующий день вышла 0.93


Обновить базы
deb:/usr/bin/freshclam

Сканировать усе )
deb:/usr/bin/clamscan -r /

конкретные дериктории и сохранение результата в scanlog.txt
deb:/usr/bin/clamscan -r /home/team > scanlog.txt



Infected files: 70 вирусов из 36 вирусов и 36 архивов с вирусами

Если учесть устаревшую версию и соответственно антивир базу под нее, то неплохо,
но вирусы которые тестировались так же явно не из новейших )