Показаны сообщения с ярлыком Linux (Линукс). Показать все сообщения
Показаны сообщения с ярлыком Linux (Линукс). Показать все сообщения

вторник, августа 21

[UPDATE] Debian. установка mysql server

Решил чуток обновить пост

1) устанавливаем сервер MySQL
#apt-get install mysql-client mysql-server

2) Выполняем bash-скрипт (исходник) с правами root. При выполнении запросится пароль от root-пользователя MySQL.
Скрипт избавляет нас от ошибки "Access denied for user ‘debian-sys-maint’@'localhost" и устанавливает кодировку UTF-8 по умолчанию


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

понедельник, мая 21

Linux tips. консолька и mkdir

Вот за что я люблю линуха, так это за то, что тут можно вытворять вот такие вот штуки:

# mkdir -p domain/{tmp,vhosts/{www,fish}/{public,php}}


результатом данной команды будут созданы директории:
domain/tmp
domain/vhosts/www/public
domain/vhosts/www/php
domain/vhosts/fish/public
domain/vhosts/fish/php


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

четверг, января 5

менеджер пакетов dpkg и немного awk

Маленькая строчка, но очень полезная в "быту":

sudo dpkg --get-selections | grep %ЧТО_ИЩЕМ% | awk '{print $1}' - | sudo xargs dpkg --[purge|remove]

[purge|remove] - команда на выш выбор.

Для чего нужна? Чтобы удалить большой (более 1-го ;) ) список пакетов из системы по фильтру %ЧТО_ИЩЕМ%.

последний раз столкнулся, когда у меня zend-server не захотел устанавливаться из репозитария. да и удаляться тоже не пожелал - ругался и требовал, чтобы я выполнил "apt-get -f install", в котором он тоже только ругался на зависимости. Пришлось "прибивать" пакеты вручную через dpkg, исправлять зависимости и заново устанавливать zend-server :)


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

с CentOS на Debian. iptables (обновленное)

ранее я уже писал про использование правил iptables в Debian-based операционках. в комментариях неизвестный подсказал удобное и, пожалуй, более правильное решение - прописывание напрямую скрипта загрузки в /etc/network/interfaces.

Итак, что нам понадобится:
1) установленный пакет iptables (проверить можно через "sudo dpkg -s iptables | grep -i status")
2) ваш прежний скрипт-файл правил (у меня он называется iptables.sh)

Проверяем и, если данное правило отсутствует, то добавляем в файл /etc/network/interfaces для нужного сетевого интерфейса (например для eth0):

pre-up iptables-restore < /etc/iptables.up.rules


ЗЫ: у меня оно было прописано для интерфейса eth0 как "post-up ..." - заменил на "pre-up ..."

теперь наш скрипт iptables.sh работает как и прежде - выполняем, проверяем, сохраняем.


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

вторник, августа 23

ручная установка JRE/JDK на Linux сервере

Бывает так, что на сервере с Linux нет требуемой версии Java и её приходится устанавливать самому.
Со временем пришёл к следующей схеме (подсмотрел "в этих ваших интырнетах") да сам что-то допилил.

1) качаем нужную нам версию с оффсайта. Лично я качаю всегда или tar или bin архив
2) распаковываем куда-нить на сервере. например в /usr/lib/jvm/
3) делаем симлинк default на ту JRE/JDK, что будет использоваться по умолчанию
4) делаем симлинк latest на ту JRE/JDK, что является последней версией (может быть на ту же версию Java, что и для default)
5) добавляем через update-alternatives наш каталог default
6) указываем через update-alternatives по умолчанию добавленный default.

Пример (для Java SE Development Kit 7):

$ wget http://download.oracle.com/otn-pub/java/jdk/7/jdk-7-linux-x64.tar.gz
$ tar xvf jdk-7-linux-x64.tar.gz
$ sudo mv jdk1.7.0 /usr/lib/jvm/
$ sudo ln -s /usr/lib/jvm/jdk1.7.0 /usr/lib/jvm/default
$ sudo ln -s /usr/lib/jvm/jdk1.7.0 /usr/lib/jvm/latest
$ sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/default/bin/java" 4
$ sudo update-alternatives --install "/usr/bin/java" "javac" "/usr/lib/jvm/default/bin/java" 4
$ sudo update-alternatives --install "/usr/bin/java" "javaws" "/usr/lib/jvm/default/bin/java" 4

И теперь через команду "sudo update-alternatives --config java" (вместо java можно подставить javac или javaws) настраиваем, что по умолчанию будет отзываться на команду java (javac и javaws соответственно).

Проверяем:

$ java -version
java version "1.7.0"
Java(TM) SE Runtime Environment (build 1.7.0-b147)
Java HotSpot(TM) 64-Bit Server VM (build 21.0-b17, mixed mode)

ЗЫ: симлинк latest нужен, чтобы всегда можно было обратиться к последней версии Java :)

четверг, июля 7

Eclipse и большие XML файлы

При попытке открыть очередной XML файл в несколько сотен килобайт внутри Eclipse, последний тупо "завис". Различные попытки "поиграть" с параметрами запуска не приводили к успеху.

В итоге, действенным способом оказалось предварительно отформатировать XML, а потом уже "скармливать" его Eclipse.

самый простой и быстрый способ, это в консоли выполнить:
xml_pp -l -i.bak file

В итоге, получим отформатированный XML-файл file и его резервную копию (оригинал) в виде file.bak

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


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

понедельник, мая 30

gnome & глюки

Иногда полезно полностью "сносить" настройки какой-либо проги. Это заметил уже давно - ещё со времён "проживания" на винде.

Вот и сейчас, долго думал, отчего у меня глюки:
1) Rhythmbox не желает понимать ленты подкастов
2) Pidgin ругается на подключение к протоколу аськи (при этом, если зайти в кеды, то прекрасно подключается)
3) ещё по мелочи всякого "хлама"

В итоге, снёс полностью каталоги .gconf(d) и все глюки "как рукой сняло" :)

Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

воскресенье, января 30

SSH и шифрованный known_hosts

Какое-то время "ругался" на то, что в Ubuntu файл known_hosts по-умолчанию шифрует имена доменов - любил совмещать строчки, когда несколько доменов на одном IP, ибо было удобно (хотя и крайне редко требовалось) обновлять ключ.
А тут наткнулся на такую же "проблему" и на её решение через команду и мои "проблемы" сняло как рукой :)

В общем, что мы вокруг да около.
Для того, чтобы удалить из known_hosts устаревший ключ, выполняем команду "ssh-keygen -R host_name|IP", после чего повторно пробуем зайти на удалённый сервер.

там же, есть ссылка на интересную статью Максима Коновалова с писанием поддержки отпечатков SSH в DNS (RFC-4255).

среда, января 19

VirtualBox 4.0 и поддержка плагинов

Начиная с версии 4.0 многоуважаемая компания Oracle добавила поддержку плагинов в VirtualBox и вынесла поддержку USB 2.0 в отдельный плагин. Плагин "Oracle VM VirtualBox Extension Pack" добавляет поддержку "USB 2.0 Host Controller, VirtualBox RDP, PXE ROM with E1000 support"

Не, моя конечно понимай, что плагины это удобно, но... моя долго думать нафига вынесли в плагин, который нужно качать отдельно, то, что раньше работало "изкаропки"?

понедельник, января 10

Ubuntu Desktop + LVM. Умный в гору не пойдёт...

Можно пойти так, как "нашпиговано" в ентом вашем ынтырнете и через всякие Ubuntu LiveCD и прочую хрень из консоли хреначить сперва ручками весь LVM, потом на него "натягивать" Desktop.
А можно пойти ПРОЩЕ:
1) качаем Ubuntu Server
2) устанавливаем дистрибутив через его стандартный GUI с разметкой LVM
3) Сразу после загрузки (предполагаем, что у нас тырнет ужо настроен) выполняем команду "apt-get install ubuntu-desktop"
4) перезагружаемся и... вах, шайтан - да перед нами обычный Ubuntu Desktop!

ЗЫ: я, правда, после этого ещё ядро переставил с серверного на десктопный) но это кому какие фломастеры нужны. Да ещё парочку PPA добавил, чтоб некоторый софт посвежее был)


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

пятница, декабря 10

Tomcat и виртуальный хостинг. часть 2: добавление виртуального хоста

Ранее мы настроили связку Nginx+Tomcat для хостинга. Давайте теперь добавим виртуальный домен example.org

Шаг 1: настраиваем nginx

создаём файл /srv/nginx/vhost_01_example.org.conf:
server { listen 80; server_name example.org *.example.org location / { proxy_pass http://127.0.0.1:8080; include /srv/nginx/proxy.conf; } }

Теперь вы можете выполнить команду "service nginx reload" и, открыв в браузере адрес http://example.org, увидеть домашнюю Tomcat-страницу

Шаг2: настраиваем Tomcat

# cd /srv/tomcat
# mkdir webapps/example.org
# sed -e 's/localhost/example\.org/g' conf/server.d/vhost-localhost.xml > conf/server.d/vhost-example.org.xml

правим server.xml, добавляя новые строки:
<?xml version='1.0' encoding='utf-8'?> <!DOCTYPE server-xml [ <!ENTITY vhost-localhost SYSTEM "server.d/vhost-localhost.xml"> <!ENTITY vhost-example.org SYSTEM "server.d/vhost-example.org.xml"> ]> ... &vhost-localhost; &vhost-example.org; </Engine> ...

Теперь нужно настроить пользователя для менеджера виртуального хоста.

Добавим нового пользователя manager-example.org с новой одноимённой ролью в /srv/tomcat/conf/tomcat-users.xml:
<role rolename="manager-example.org" />
<user username="manager-example.org" password="12345678" roles="manager-example.org" /&rt;
и внесём изменения в конфигурационный файл Manager-приложения:
# cp -R webapps/localhost/manager webapps/example.org/
# cd webapps/example.org/manager/WEB-INF
# sed -i.bak 's/<role-name>manager<\/role-name>/<role-name>manager-example.org<\/role-name>/g' web.xml

Перезапускаем томкат:
# chown -R tomcat:tomcat /srv/tomcat
# service tomcat6 stop
# tail -f /srv/tomcat/logs/catalina.out ;Ждём остановки Tomcat и жмём Ctrl+C
# service tomcat6 start

Открываем в браузере адрес http://example.org/manager/html и на запрос авторизации вводим логин/пароль для пользователя manager-example.org.

На этом базовая настройка виртуального хоста example.org завершена.


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

Tomcat и виртуальный хостинг. часть 1: связка Nginx + Tomcat

Рано или поздно приходишь к тому, что на сервере Tomcat хочется держать не только один сайт. можно конечно же разные сайты делить за тем же Nginx по запросам к подкаталогу "/domain-name", но правильнее будет сделать разнесение по виртуальным хостам. ещё правильнее - разнести "клиентов" ещё и по разным инстансам tomcat (чтобы они "соседей" не "завалили"), но это покажу как-нибудь в другой серии постов.
Итак, наша задача - настройка Tomcat на работу с виртуальными хостами

С чего мы начнём? с базового задела Tomcat под поставленную задачу - со связки Nginx+Tomcat (помимо плюсов самого Nginx, нам не придётся думать об уровне доступа Tomcat для прослушки 80-го порта)

Настройка производится на сервере CentOS 5.5 (но думаю, что и на других версиях не будет отличий ;) ). Так же на сервере должен быть открыт 80-й порт

Устанавливаем nginx "по умолчанию":
# yum install nginx

создаём каталог /srv/nginx и меняем ему владельца и группу на nginx (в этом каталоге мы будем хранить настройки виртуальных хостов для nginx):
# mkdir -p /srv/nginx
# chown nginx:nginx /srv/nginx


правим файл /etc/nginx/conf.d/virtual.conf
# mv /etc/nginx/conf.d/virtual.conf /etc/nginx/conf.d/virtual.conf.orign
# echo "include /srv/nginx/vhost_*.conf;" > /etc/nginx/conf.d/virtual.conf

создаём файл /srv/nginx/proxy.conf со следующим содержимым:
proxy_redirect off;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;

это общие настройки для всех виртуальных хостов. В последующем можно будет дописать или поправить его содержимое.

создаём хост "по-умолчанию", для этого создаём файл /srv/nginx/vhost_00_default.conf:
server { listen 80 default; location / { proxy_pass http://127.0.0.1:8080; include /srv/nginx/proxy.conf; } }

Теперь переходим к базовой установке и настройке Tomcat
Скачиваем и распаковываем дистрибутив Apache Tomcat (повествую на примере версии 6.x)
# cd /srv
# wget http://www.sai.msu.su/apache/tomcat/tomcat-6/v6.0.29/bin/apache-tomcat-6.0.29.tar.gz
# tar xvf apache-tomcat-6.0.29.tar.gz
# mv apache-tomcat-6.0.29 tomcat
# useradd -d /srv/tomcat -s "/sbin/nologin" tomcat

для запуска демона Tomcat от пользователя tomcat можно скомпилировать jsvc, но мне больше нравится нижеприведённый скрипт /etc/init.d/tomcat6:
#!/bin/sh # # /etc/init.d/tomcat6 # # This is the init script for starting up the # Jakarta Tomcat Server # # chkconfig: 234 20 80 # description: Starts and stops the Tomcat daemon # processname: tomcat # # source functions library for 'daemon' function . /etc/init.d/functions TOMCAT_HOME=/srv/tomcat TOMCAT_START=$TOMCAT_HOME/bin/startup.sh TOMCAT_STOP=$TOMCAT_HOME/bin/shutdown.sh TOMCAT_USER=tomcat start() { echo -n $"Starting Tomcat service: " daemon --user $TOMCAT_USER $TOMCAT_START RETURN_CODE=$? echo $? } stop() { echo -n $"Stopping Tomcat service: " daemon --user $TOMCAT_USER $TOMCAT_STOP RETURN_CODE=$? echo $? } status() { ps aux | grep tomcat | grep -v grep } # Handle the different input options case "$1" in start) start ;; stop) stop ;; status) status ;; *) echo $"Usage: $0 {start|stop|status}" exit 1 esac exit 0

Теперь переходим к небольшому "тюнингу" Tomcat, для дальнейшего удобства его администрирования

Для начала, поправим файл /srv/tomcat/conf/server.xml (далее просто server.xml) для работы с Nginx. Для этого найдём
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000"redirectPort="8443" />
и заменим её на
<Connector address="127.0.0.1" port="8080" protocol="HTTP/1.1" connectionTimeout="20000"redirectPort="8443" />
тем самым мы укажем Tomcat, чтобы он слушал порт 8080 только локально

Перейдём к настройке хостов.

удобнее всего править настройки хостов не выискивая их в "портянке" файла server.xml, а вынеся настройки каждого хоста в отдельный файл. Для этого произведём некоторые изменения в файле server.xml

изменяем "шапку" файла, дописав блок DOCTYPE:
<?xml version='1.0' encoding='utf-8'?> <!DOCTYPE server-xml [ <!ENTITY vhost-localhost SYSTEM "server.d/vhost-localhost.xml"> ]>

создадим подкаталог server.d, в котором будут лежать конфигурационные файлы наших виртуальных хостов:
# cd /srv/tomcat/conf
# mkdir server.d

Вынесем в отдельный файл настройки для localhost... Для этого найдём в server.xml блок "<Host>...</Host>" и сохраним его в server.d/vhost-localhost.xml:
# cd /srv/tomcat/conf
# echo "<?xml version='1.0' encoding='utf-8'?>" > server.d/vhost-localhost.xml
# sed -n -e '/[[:space:]]*<Host.*/,/[[:space:]]<\/Host>/p' server.xml >> server.d/vhost-localhost.xml
# sed -i.bak -n '1h;1!H;${x;s/<Host.*<\/Host>/\&vhost-localhost;/;p}' server.xml

Для работы Tomcat требуется установленная на сервере Java-машина. Путь до неё прописывается в файле /srv/tomcat/bin/setenv.sh:
# echo "JAVA_HOME=/usr/java/default" > /srv/tomcat/bin/setenv.sh

Следующий наш шаг - настройка каталога webapps для будущих виртуальных каталогов
# cd /srv/tomcat
# sed -i 's/webapps/webapps\/localhost/' conf/server.d/vhost-localhost.xml
# mv webapps localhost
# mkdir webapps
# mv localhost webapps/

и заваршающее действие:
# chown -R tomcat:tomcat /srv/tomcat

Готово. теперь можно запускать созданный web-сервер:
# service tomcat6 start
# service nginx start

Зайдите в браузере по адресу http://ваш_сервер - вы должны увидеть Tomcat-страницу по-умолчанию.

Если всё правильно настроено и вы увидели страницу Tomcat, то можно установить автозапуск для демонов:
# chkconfig nginx on
# chkconfig --add tomcat6
# chkconfig tomcat6 on

ЗЫ: комментарии и замечания приветствуются :)

UPD: изменил немного скрипты - местами удалил "ручную" работу и описал для Tomcat 6 вместо Tomcat 7


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

суббота, ноября 13

Debian. mysql server

статья устарела. обновленная версия тут

Сразу после установки настраиваемся на utf8 и удаляем ошибку при запуске демона:

1) устанавливаем сервер MySQL
apt-get install mysql-server

2) удаляем ошибку "Access denied for user ‘debian-sys-maint’@'localhost" (решение найдено тут)
открываем файл /etc/mysql/debian.cnf и находим строчку password:
password = bla-bla-bla

в клиенте mysql выполняем команду
GRANT ALL PRIVILEGES ON *.* TO 'debian-sys-maint'@'localhost' IDENTIFIED BY '%password%' WITH GRANT OPTION; # вставляем вместо %password% "подсмотренный" пароль.

3) устанавливаем кодировку utf8 по умолчанию
в файле /etc/mysql/my.cnf добавляем строки для каждого блока []:

[client]
default-character-set = utf8
[mysqld_safe]
default-character-set = utf8
[mysqld]
character-set-server = utf8
collation-server = utf8_general_ci
init-connect = "set names utf8;"
[mysqldump]
default-character-set = utf8

4) перезапускаем сервер MySQL

5) заходим клиентом и на команду "mysql> show variables like "%character%";show variables like "%collation%";" видим нечто подобное:
mysql> show variables like "%character%";show variables like "%collation%";
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

+----------------------+-----------------+
| Variable_name | Value |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database | utf8_general_ci |
| collation_server | utf8_general_ci |
+----------------------+-----------------+


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

четверг, ноября 11

Debian. timezone

Для настройки временной зоны и синхронизации,
  • "apt-get install ntp ntpdate" - ставим NTP демона для синхронизации
  • "ntpdate -bs ru.pool.ntp.org" - синхронизируем часы
  • "dpkg-reconfigure tzdata" - выставляем нужную нам временную зону, например Europe/Moscow

подсмотрено тут


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

с CentOS на Debian. iptables

Решил перебраться на сервере с CentOS на Debian

Первое "неудобство", с которым столкнулся, это отсутствие, ставших уже привычными, скриптов восстановления правил для iptables.
Поиск в инете можно сделать и найти вагон и маленькую тележку информации, что в Debian всё убрано и что нужно всё прописывать ручками в интерфейсах и прочее... а можно просто глянуть результат команды "apt-cache search iptables" и увидеть пакет iptables-persistent (как поставить из тестовой ветки)... вот он то нам и нужен

устанавливаем пакет командой "apt-get install iptables-persistent"
теперь у нас есть скрипт /etc/init.d/iptables-persistent, который и будет восстанавливать правила после запуска системы.
А сами правила теперь вместо /etc/sysconfig/iptables лежат в /etc/iptables/rules
соответственно, после тестирования правил, сохраняемся по команде "iptables-save > /etc/iptables/rules".

В остальном больше никаких изменений нет - у меня прекрасно заработал всё тот же мой скрипт iptables.sh


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

суббота, августа 21

NAT & iptables в Linux (CentOS)

несколько часов убились мною и моим коллегой "по цеху" на поиск решения "да что за нафиг такой?" :)

преамбула:
на сервере используется скрипт iptables.sh, который описывает правила для iptables. дело нехитрое - поправил правила, запустил, проверил работу и, если всё тип-топ, то сохранил правила.
В скрипте описание довольно нехитрое: очистили все правила маршрутизации и воссоздали их по новой.
Всё казалось бы просто, до тех пор, пока не столкнулись с nat-маршрутизацией :)

правила сбрасывались следующими строчками в скрипте:
$IPTABLES -F
$IPTABLES -X
, где $IPTABLES - путь до приложения (IPTABLES="/sbin/iptables")

в том же скрипте когда-то была настройка на переброс порта с 80 на 8080, от которой по некоторым соображениям, было решено отказаться.
дело не хитрое - заремили нужную строку и выполнили скрипт.
и, как говорится, "скоро сказка сказывается, да не скоро дело делается" - НЕ ПАШЕТ.
снова смотрим скрипт - всё верно. сохраняем правила, перегружаем сервер на всякий, что должно как минимум сбросить нам все правила и реанимировать их из сохраняшки. ага, щаз...

в общем, пока суд да дело, было найдено решение - в блок сброса таблицы маршрутизации требуется дописать отдельное правило для сброса именно nat-маршрутов:
$IPTABLES -t nat -F

после чего, весь блок сброса приобретает вид:
$IPTABLES -F
$IPTABLES -X
$IPTABLES -t nat -F

ЗЫ: подумалось, что это ведь довольно неплохая задачка для вопроса на собеседовании :)


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

среда, июля 28

Релиз дистрибутива Clonezilla Live 1.2.5

Вышел стабильный релиз Linux дистрибутива Clonezilla Live 1.2.5-35, предназначенного для быстрого клонирования дисков (копируются только используемые блоки). Задачи выполняемые дистрибутивом сходны с проприетарным продуктом Norton Ghost. Дистрибутив основан на Debian GNU/Linux, в своей работе использует код проектов DRBL, Partition Image, ntfsclone, partclone, udpcast. Возможна загрузка с CD, USB Flash и по сети (PXE). Поддерживаются ФС: ext2, ext3, reiserfs, reiser4, xfs, jfs, FAT, NTFS, UFS, HFS+ (Mac OS X). Поддерживается режим массового клонирования в multicast режиме, например, при тестировании, за 10 минут удалось провести клонирование исходного 5.6 Гб диска на 41 клиентскую машину. Размер iso-образа дистрибутива - 118 Мб.

Из наиболее заметных улучшений релиза Clonezilla Live 1.2.5-35 можно отметить:

  • Дистрибутив переведен на пакетную базу Debian Sid, со всеми обновлениями по состоянию на 20 июля;
  • Linux-ядро обновлено до версии 2.6.32-17;
  • Для сборки Live-системы использованы пакеты live-helper 2.0~a19-1.1drbl и live-initramfs 1.236.2-1drbl-3;
  • Утилита Partclone обновлена до версии 0.2.11;
  • По умолчанию используется видеорежим VGA 800x600, что позволяет использовать дистрибутив на нетбуках с небольшими экранами;
  • В приложение prep-ocsroot добавлена поддержка sshfs/cifs путей с пробелами;
  • Программа ocs-iso теперь может создавать iso для восстановления системы, размером больше 4.5 Гб.




источник

Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

воскресенье, июня 13

Гимн России и гики

Забыли гимн России? Не беда!

Вариант для Windows CMD (в одну строку):
@echo off & (
for /l %z in (200,1,223) do
for /f "usebackq skip=3 tokens=2-10 delims=:." %a in (`nslookup 62.76.96.%z`) do echo %a %b %c %d %e %f %g %h %i|
findstr /RV "[0-9]") & echo on
Вариант для Unix/Linux:
dig -t ptr +short {200..225}.96.76.62.in-addr.arpa

четверг, мая 27

новинки/правки в Fedora 13

Перешёл с Russian Fedora 12 на Fedora 13.

Что из "плюшек", кроме уже широко озвученных заметил я:

1) Пропал баг с Madwimax для Yota при вытаскивании и повторной вставке модема. раньше приходилось ручками "прибивать" процесс и потом уже вставлять модем
2) После выключения и повторного включения Wi-Fi, NetworkManager нормально цепляется к Wi-Fi сети. раньше с этим у меня была проблема :(
3) наконец-то "из коробки" заработал Compiz на ATI карточке (ноут) и пока, тьфу-тьфу, без багов

и из минусов: как не умел ставить "из коробки" мой МФУ Samsung SCX-4300, так и не умеет. Не помогает даже заявленная фунциональность с "автоматический поиск драйверов для принтеров" (не_верю)


пока всё за 40 минут пользования новой ОС.


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

вторник, мая 4

авторизация в SSH без пароля (по ключу)

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

В качестве метода авторизации по SSH можно использовать пару RSA ключей (публичный и секретный). Сначала пара ключей создается на компьютере, который будет использоваться для входа по SSH, затем публичная часть ключа копируется на сервера, к которым нужен доступ. Ключ может быть без пароля, но это не очень безопасно, зато удобно. Можно же зашифровать секретный ключ паролем, при соединении к серверам будет запрошен пароль, и вы сможете использовать один пароль для доступа ко всем серверам.
Генерация SSH ключей

В первую очередь, нужно создать пару ключей, если их ещё нет. По умолчанию ключи хранятся в домашней директории пользователя, /home/имя пользователя/.ssh/id_rsa и id_rsa.pub. Итак:

ssh-keygen
Enter file in which to save the key (/home/igosha/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):<Пароль(или ничего), Enter>
Enter same passphrase again: <Тот же пароль, Enter>
Your identification has been saved in /home/igosha/.ssh/id_rsa.
Your public key has been saved in /home/igosha/.ssh/id_rsa.pub.
The key fingerprint is:
92:12:4c:сс:c8:36:ec:f6:60:50:c4:82:2a:01:39:20 igosha@igosha

Пара ключей готова.
Установка SSH ключей на сервера

Теперь, когда у нас есть ключ:
- нужно создать на серверах, к которым мы собираемся подключаться с использованием этого ключа, папку /home/имя пользователя/.ssh. И, конечно, на сервере должен существовать пользователь с тем же именем, что и на локальной машине, где мы делали ключ.
- копируем файл /home/имя пользователя/.ssh/id_rsa.pub на сервер, в файл /home/имя пользователя/.ssh/authorized_keys2:
scp ~/.ssh/id_rsa.pub hostname_of_server:.ssh/authorized_keys2

Важно: если файл authorized_keys2 уже существует, то его нужно просто дописать:
cat ~/.ssh/id_rsa.pub | ssh hostname_of_server "cat >> .ssh/authorized_keys2"

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

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


Источник статьи: http://www.igosha.com/archives/41


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!