О чем тут? Да обо всем подряд. Это моя записная книжка. В основном тут бэкапы заинтересовавших меня статей, новости и ссылки.

Google выпустил новый язык программирования для Android

| 30 июл. 2009 г.
Группа PDA
Компания Google выпустила язык программирования, который упрощает процесс создания приложений для платформы Android. Он называется Simple и построен на базе языка программирования BASIC.

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

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

>>> http://code.google.com/p/simple/ -- сайт проекта на GoogleCode

>>> Подробности (eng.)

Метки: android, basic, google, opensource, simple
DoctorSinus(*) (29.07.2009 23:33:02)

Работаем с PuTTY из Windows

|

Работаем с PuTTY из Windows

Игорь Лаврушов
г.Кисловодск

Putty это несколько отдельных программ, предназначенных для работы с unix-сервером по протоколам SSH1, SSH2, Telnet, Rlogin, Raw. Автором PuTTY является Simon Tatham. Программа работает на Win для Intel x86 и Alpha, а также на UNIX. Несмотря, на то что программа довольно популярна во всем мире, статей по практической работе с ней я не нашел, тем более что есть ньюансы, которые нужно учитывать. Чтобы устранить этот пробел и написана данная статья. Итак, полный комплект программ, под общим названием putty, состоит из нескольких утилит, их назначение вы видите ниже:

    putty.exe - клиент для соединения с сервером по протоколам telnet, ssh, raw, rlogin
    puttytel.exe - только telnet клиент
    puttygen.exe - генератор rsa/dsa ключей
    pagent.exe - агент аутендификации, хранит ключи в памяти, при его использовании не нужно ручками вводить ключевую парольную фразу
    plink.exe - интерфейс командной строки для putty
    pscp.exe - безопасное копирование файлов
    psftp.exe - безопасный ftp клиент для копирования, просмотра, переименования файлов и т.д.

Установка
Скачайте с домашней странице PuTTY последнюю версию программы или только те утилиты, которые вам нужны для работы. Устанавливать putty необязательно, можно просто скопировать файлы в нужную директорию. Я например, храню комплект putty на флешке и ношу его с собой.

Создание пары ключей
Для укрепления безопасности, при работе с сервером, лучше отключить вход по паролю и создать ключи с ключевой парольной фразой. Для этого предназначена утилита puttygen.exe, внешний вид которой вы видите на экране. После запуска, установите тип создаваемых ключей SSH1(RSA), SSH2(RSA) или SSH2(DSA), говорят что SSH2(RSA) самый защищенный. Теперь нужно выбрать длину ключа в битах, по умолчанию там установлено 1024. Меньшее значение установить можно, но SSH2 сервер работать с короткими ключами не будет. Я не рекомендую использовать стандартные длины ключей типа 1024, 2048, 4096 лучше измените длину случайным образом 1429, 2361, 3417 и т.д. Далее нажмите кнопку Generate и поводите мышкой по пустому KEY-полю, пока ползунок дойдет до конца, после этого будут сгенерированы два ключа.



Нажмите кнопку Save public key, для того чтобы записать на диск публичный ключ, назовем его rsa-pub. Этот файл вы скопируете на SSH сервер, для того чтобы он вас узнавал. Теперь нажмите Save private key, и запишите на диск ваш секретный ключ с именем rsa-priv который будет храниться только у вас и передавать его никуда не нужно. Парольную фразу, лучше создать, хотя можно работать и без нее, просто создайте ключ большей длины 3926бит например. Итак, на диске вы имеете два файла rsa-pub и rsa-priv.ppk. Если на сервере вы используете OpenSSH, то перед тем как вы скопируете rsa-pub на ваш удаленный сервер, нужно его скорректировать! Без этого, этот ключ не будет работать в unix системах с OpenSSH! Оригинальный файл rsa-pub, который был создан puttygen, выглядет так:

---- BEGIN SSH2 PUBLIC KEY ----
Comment: "rsa-key-20050107"
AAAAB3NzaC1yc2EAAAABJQAAAIEA0vzPSq4tpvZf12OSyd6Q+F+tAEFMSn8kC1eQ
fqIZ9qCX2NNIJkYbtRrwZxLDTw4BR2zEuN+uHXZ4mepIKwtVHIUUiHoYUV8k/hXX
NbO0UMk=
---- END SSH2 PUBLIC KEY ----

Удалите первую, вторую и последнюю строки из него, впереди напишите ssh-rsa затем пробел, далее идет код с убранными символами переноса строки, в конце один пробел. Выглядеть отредактированный файл rsa-pub, будет так:

ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEA0vzPSq4tpvZf12OSyd6Q+F+tAEFMSn8kC1eQfqIZ9 qCX2NNIJkYbtRrwZxLDTw4BR2zEuN+uHXZ4mepIKwtVHIUUiHoYUV8k/hXXNbO0UMk=

Вот теперь файл rsa-pub с публичным ключем, готов к отправке на удаленный unix сервер и работать он будет корректно. Можно сделать по другому, выделите ключ в окне KEY, затем создайте пустой файл командой copy con rsa-pub и нажмите F6, теперь скопируйте в файл rsa-pub ключ из буфера, результат тотже.

Пересылка публичного ключа на сервер
Перед тем как послать файл с ключем на сервер, нужно создать на сервере директорию .ssh в домашнем каталоге пользователя, под которым мы будет заходить и затем переслать сам файл, заодно его нужно переименовать. Сделать это можно средствами unix сервера, а можно и с помощью psftp.exe, команда выглядет так:

          сжатие     файл с командами         ip сервера
| | |
psftp -v -C -2 -b makesshdir.scr username@172.133.51.19
| |
SSH2 пользователь
При соединении, один раз, будет запрошен пароль пользователя username. Файл makesshdir.scr состоит из нескольких команд:
    mkdir .ssh
    cd .ssh
    put rsa-pub authorized_keys
    quit

Вход на сервер
Зайти на сервер вы можете несколькими способами. Если вы заходите по паролю, можно указать его прямо в строке или ввести по запросу (что, прямо скажем, более безопасно, так как пароль указывается в открытом виде), вот как будут выглядеть эти команды:

    putty -v -ssh -C -2 -pw ft6nHi4gAr username@172.133.51.19
    putty -v -ssh -C -2 username@172.133.51.19
Если вы заходите с указанием ранее сгенерированного ключа, введите такую команду:
    putty -v -ssh -C -2 -i rsa-priv.ppk username@172.133.51.19
После того как вы проверили, что вход с ключем работает, отключите возможность входа по паролю на ваш сервер. Для этого в файле /etc/sshd_config измените следующие команды:
    PasswordAuthentication no
    PermitEmptyPasswords no
Незабудте отключить возможность соединяться с сервером по устаревшему протоколу SSH1, для этого установите (есть конечно и другие команды, но здесь мы о другом читаем):
    Protocol 2

Пересылка файла
При работе с сервером, периодически возникает необходимость передать файл на сервер или принять файл с сервера. Сделать это можно утилитами pscp.exe и psftp.exe. На мой взгляд, pscp.exe использовать удобнее. Ниже смотрим на пример, который показывает, как можно по защищенному каналу, переслать файл stat0211.tgz из своего ПК на удаленный сервер:

            сжатие   исходный файл          ip сервера
| | |
pscp.exe -v -C -2 stat0211.tgz username@172.133.51.19:
| |
SSH2 пользователь
При выполнении команды в таком виде, сервер запросит пароль. Чтобы это избежать можно добавить строку с паролем
-pw Fgt5tg6y или указать ключ -i rsa-priv.ppk что значительно лучше, из соображений безопасности.

Теперь, мы захотели получить файл из удаленного сервера и сохранить его на своем ПК. Разные варианты команд, приведены ниже. Здесь все как и в предыдущих командах, вообщем, разберайтесь сами:

    pscp -v -C -2 -i rsa-priv.ppk username@172.133.51.19:config.tgz config.tgz
    pscp -v -C -2 -pw node1xnet username@172.133.51.19:rc.local rc.local
    pscp -v -C -2 username@172.133.51.19:rc.modules rc.modules

Манипуляции с файлами
Утилита psftp.exe также как и pscp.exe позволяет копировать файлы, но возможности ее значительно больше. Psftp.exe может производить манипуляции с файлами на удаленном сервере и на локальном ПК. Для работы с этим клиентом в ручном режиме, кликните по файлу psftp мышкой. В появившейся командной строке, наберите open 142.45.110.18, ведите пароль для соединения с указанным сервером. В вашем распоряжении, следующие команды:

    ! - выполнить команду на локальном компьютере
    lcd - изменить текущую директорию на локальном пк
    lpwd - показать текущую директорию на локальном пк

    chmod - изменить права файлов или директорий
    mv - переименовать файл
    del, rm - удалить файл
    dir, ls - показать список файлов и директорий
    cd - изменить текущую директорию
    mkdir - создать новую директорию
    rmdir - удалить пустую директорию
    pwd - показать текущую директорию

    open - соединиться с указанным сервером
    close - закрыть текущую SFTP сессию без выхода из psftp
    bye, exit, quit - закрыть текущую сессию и выйти из программы
    help - список команд с пояснениями

    get - загрузить файл на локальный пк (с удаленного сервера)
    mget - загрузить много файлов на локальный пк
    reget - продолжить загрузку файлов на локальный пк
    put - загрузить файл на сервер (с локального пк)
    mput - загрузить много файлов на сервер
    reput - продолжить загрузку файлов на сервер
Самое приятное, что все эти команды можно задавать в автоматическом режиме и таким образом автоматизировать работу с удаленным сервером. Команды должны записываться в отдельный файл с расширением .scr в той последовательности в какой они будут выполняться. Исполняемая команда будет выглядеть всегда одинаково, так как вы видите ниже, а вот содержимое файла test1.scr будет меняться в зависимости от задачи. Некоторые возможности, уже были описаны выше.
    psftp -v -C -2 -i rsa-priv.ppk -b test1.scr username@172.133.51.19

отсюда
|
Настройки PuTTY

То же на русском

Про PuTTY

|
Файловые команды Putty

Код:
ls – список файлов и каталогов
ls -al – форматированный список со скрытыми каталогами и файлами
cd dir – сменить директорию на dir
cd – сменить на домашний каталог
pwd – показать текущий каталог
mkdir dir – создать каталог dir
rm file – удалить file
rm -r dir – удалить каталог dir
rm -f file – удалить форсированно file
rm -rf dir – удалить форсированно каталог dir *
cp file1 file2 – скопировать file1 в file2
cp -r dir1 dir2 – скопировать dir1 в dir2; создаст каталог dir2, если он не существует
mv file1 file2 – переименовать или переместить file1 в file2. если file2 существующий каталог - переместить file1 в каталог file2
ln -s file link – создать символическую ссылку link к файлу file
touch file – создать file
cat > file – направить стандартный ввод в file
more file – вывести содержимое file
head file – вывести первые 10 строк file
tail file – вывести последние 10 строк file
tail -f file – вывести содержимое file по мере роста, начинает с последних 10 строк
Управление процессами

ps – вывести ваши текущие активные процессы
top – показать все запущенные процессы
kill pid – убить процесс с id pid
killall proc – убить все процессы с именем proc *
bg – список остановленных и фоновых задач; продолжить выполнение остановленной задачи в фоне
fg – выносит на передний план последние задачи
fg n – вынести задачу n на передний план
SSH

ssh user@host – подключится к host как user
ssh -p port user@host – подключится к host на порт port как user
ssh-copy-id user@host – добавить ваш ключ на host для user чтобы включить логин без пароля и по ключам
Архивация

tar cf file.tar files – создать tar-архив с именем file.tar содержащий files
tar xf file.tar – распаковать file.tar
tar czf file.tar.gz files – создать архив tar с сжатием Gzip
tar xzf file.tar.gz – распаковать tar с Gzip
tar cjf file.tar.bz2 – создать архив tar с сжатием Bzip2
tar xjf file.tar.bz2 – распаковать tar с Bzip2
gzip file – сжать file и переименовать в file.gz
gzip -d file.gz – разжать file.gz в file
Поиск

grep pattern files – искать pattern в files
grep -r pattern dir – искать рекурсивно pattern в dir
command | grep pattern – искать pattern в выводе command
locate file – найти все файлы с именем file
Системная информация

date – вывести текущую дату и время
cal – вывести календарь на текущий месяц
uptime – показать текущий аптайм
w – показать пользователей онлайн
whoami – имя, под которым вы залогинены
finger user – показать информацию о user
uname -a – показать информацию о ядре
cat /proc/cpuinfo – информация ЦПУ
cat /proc/meminfo – информация о памяти
man command – показать мануал для command
df – показать инф. о использовании дисков
du – вывести “вес” текущего каталога
free – использование памяти и swap
whereis app – возможное расположение программы app
which app – какая app будет запущена по умолчанию
Права доступа на файлы

chmod octal file – сменить права file на octal, раздельно для пользователя, группы и для всех добавлением:
● 4 – чтение (r)
● 2 – запись (w)
● 1 – исполнение (x)
Примеры:
chmod 777 – чтение, запись, исполнение для всех
chmod 755 – rwx для владельца, rx для группы и остальных.
Дополнительные опции: man chmod.
Сеть

ping host – пропинговать host и вывести результат
whois domain – получить информацию whois для domain
dig domain – получить DNS информацию domain
dig -x host – реверсивно искать host
wget file – скачать file
wget -c file – продолжить остановленную закачку
Установка пакетов

Установка из исходников:
./configure
make
make install
dpkg -i pkg.deb – установить пакет (Debian)
rpm -Uvh pkg.rpm – установить пакет (RPM)
Клавиатурные сочетания

Ctrl+C – завершить текущую команду
Ctrl+Z – остановить текущую команду, продолжть с fg на переднем плане или bg в фоне
Ctrl+D – разлогиниться, тоже самое, что и exit
Ctrl+W – удалить одно слово в текущей строке
Ctrl+U – удалить строку
!! - повторить последнюю команду
exit – разлогиниться

Это просто комманды linux\unix вписываешь их в консол, которая будет тебе доступна после того как залогинишься на сервере при помощи putty/

"Файловые команды Putty" не правильное определение, команды выполняются на сервера. В данном случае список приведен, если подключатся к nix машине.
форум

Справочник команд Putty / SSH / Unix / Linux

Файловые команды

ls – список файлов и каталогов

ls -al – форматированный список со скрытыми каталогами и файлами

cd dir – сменить директорию на dir

cd – сменить на домашний каталог

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

mkdir dir – создать каталог dir

rm file – удалить file

rm -r dir – удалить каталог dir

rm -f file – удалить форсированно file

rm -rf dir – удалить форсированно каталог dir *

cp file1 file2 – скопировать file1 в file2

cp -r dir1 dir2 – скопировать dir1 в dir2; создаст каталог dir2, если он не существует

mv file1 file2 – переименовать или переместить file1 в file2. если file2 существующий каталог - переместить file1 в каталог file2

ln -s file link – создать символическую ссылку link к файлу file

touch file – создать file

cat > file – направить стандартный ввод в file

more file – вывести содержимое file

head file – вывести первые 10 строк file

tail file – вывести последние 10 строк file

tail -f file – вывести содержимое file по мере роста, начинает с последних 10 строк

Управление процессами

ps – вывести ваши текущие активные процессы

top – показать все запущенные процессы

kill pid – убить процесс с id pid

killall proc – убить все процессы с именем proc *

bg – список остановленных и фоновых задач; продолжить выполнение остановленной задачи в фоне

fg – выносит на передний план последние задачи

fg n – вынести задачу n на передний план

Права доступа на файлы

chmod octal file – сменить права file на octal, раздельно для пользователя, группы и для всех добавлением:

● 4 – чтение (r)
● 2 – запись (w)
● 1 – исполнение (x) Примеры:

chmod 777 – чтение, запись, исполнение для всех

chmod 755 – rwx для владельца, rx для группы и остальных.

Дополнительные опции: man chmod.

SSH

ssh user@host – подключится к host как user

ssh -p port user@host – подключится к host на порт port как user

ssh-copy-id user@host – добавить ваш ключ на host для user чтобы включить логин без пароля и по ключам

Поиск

grep pattern files – искать pattern в files

grep -r pattern dir – искать рекурсивно pattern в dir

command | grep pattern – искать pattern в выводе command

locate file – найти все файлы с именем file

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

date – вывести текущую дату и время

cal – вывести календарь на текущий месяц

uptime – показать текущий аптайм

w – показать пользователей онлайн

whoami – имя, под которым вы залогинены

finger user – показать информацию о user

uname -a – показать информацию о ядре

cat /proc/cpuinfo – информация ЦПУ

cat /proc/meminfo – информация о памяти

man command – показать мануал для command

df – показать инф. о использовании дисков

du – вывести “вес” текущего каталога

free – использование памяти и swap

whereis app – возможное расположение программы app

which app – какая app будет запущена по умолчанию

Архивация

tar cf file.tar files – создать tar-архив с именем file.tar содержащий files

tar xf file.tar – распаковать file.tar

tar czf file.tar.gz files – создать архив tar с сжатием Gzip

tar xzf file.tar.gz – распаковать tar с Gzip

tar cjf file.tar.bz2 – создать архив tar с сжатием Bzip2

tar xjf file.tar.bz2 – распаковать tar с Bzip2

gzip file – сжать file и переименовать в file.gz

gzip -d file.gz – разжать file.gz в file

Сеть

ping host – пропинговать host и вывести результат

whois domain – получить информацию whois для domain

dig domain – получить DNS информацию domain

dig -x host – реверсивно искать host

wget file – скачать file

wget -c file – продолжить остановленную закачку

Установка пакетов

Установка из исходников:

./configure

make

make install

dpkg -i pkg.deb – установить пакет (Debian)

rpm -Uvh pkg.rpm – установить пакет (RPM)

Клавиатурные сочетания

Ctrl+C – завершить текущую команду

Ctrl+Z – остановить текущую команду, продолжть с fg на переднем плане или bg в фоне

Ctrl+D – разлогиниться, тоже самое, что и exit

Ctrl+W – удалить одно слово в текущей строке

Ctrl+U – удалить строку

!! - повторить последнюю команду

exit – разлогиниться


отсюда

kittens_summer09

| 23 июл. 2009 г.
Раздала почти всех котят.
Остался только Сёма. Ох, как я жду на него ручки! А ему, похоже, у нас нравится.
http://kittens_summer09.keep4u.ru/
Его первые 4 фото.