среда, 24 апреля 2013 г.

Установка Java в Linux

Установка Java в Linux
Скажу вам сразу, установка java в Linux, дело весьма мутное и неблагодарное. Для разных систем установка может отличаться, но во многих моментах они схожи. Здесь я опишу установку Sun Java SE Development Kit 7 в Centos. По умолчанию в Centos стоит OpenJDK, но некоторые программы, в частности Apache OpenMeetings требуют именно Sun Java. 
Итак начнем:
1) Для начала проверим не установлена ли SunJava уже, а вдруг повезет
java -version
Если вывело, что то вида (версии могут отличаться):

java version "1.7.0_21"
Java(TM) SE Runtime Environment (build 1.7.0_21-b11)
Java HotSpot(TM) 64-Bit Server VM (build 23.21-b01, mixed mode)
То нам повезло, и она уже установленна, если нет смотрим ниже.
2) Идем для начала вот сюда 

3) Устанавливаем наш пакет

4) Теперь смотрим после установки в /usr/java/ должна появиться папка /usr/java/jdk1.7.0_21
5)Теперь нам надо поменять OpenJDK на Sun JDK для смены версий JAVA служит утилита 
alternatives. Для начала с помощью alternatives зарегистрируем нашу новую версию, делается это так:
#alternatives --install /usr/bin/java java /usr/java/jdk1.7.0_21/bin/java 100
#alternatives --install /usr/bin/javaws javaws /usr/java/jdk1.7.0_21/bin/javaws 100
#alternatives --install /usr/bin/javac javac /usr/java/jdk1.7.0_21/bin/javac 100
6) Теперь надо сменить версию используемую по умолчанию делаем это так поочередно вводя команды:

# alternatives --config java
# alternatives --config javaс
# alternatives --config javaws

Здесь каждый раз будет выводиться список вида
Выбор Команда
-----------------------------------------------
*+ 1 /usr/lib/jvm/jre-1.6.0-openjdk/bin/java
2 /usr/lib/jvm/jre-1.4.2-gcj/bin/java
3 /usr/java/jre1.7.0_21/bin/java

Enter - сохранить текущий выбор[+], или укажите номер: 3
___________________________________________________________
 
Здесь надо выбрать строку вида  
/usr/java/jre1.7.0_21/bin/java и ввести цифру стоящую напротив нее
и так для всех трех команд.
 
7) Теперь снова введем
 
java -version
Если все получилось должна появиться строки вида:
java version "1.7.0_21"
Java(TM) SE Runtime Environment (build 1.7.0_21-b11)
Java HotSpot(TM) 64-Bit Server VM (build 23.21-b01, mixed mode)
Если нет значит что-то сделали не так попробуйте повторить процесс

8) Добавим в ~/.bash_profile или в /etc/profiles строку вида
export JAVA_HOME=/usr/java/jre1.7.0_21
Для того чтобы появилась системная переменная JAVA_HOME. 
 


Mysql Table is marked as crashed and should be repaired

Mysql Table is marked as crashed and should be repaired

Случилось мне как то раз наблюдать записи в mysqld.log вида "Table is marked as crashed and should be repaired" после того как свет благополучно потух без предупреждения, а на серваке как раз не было бесперебойника. Так вот не стоит сразу впадать в панику, для начала выполним следующие шаги.
Если пишет всего о нескольких таблицах, то их можно поочередно восстановить выполнив следующее:
> USE user_base
> REPAIR TABLE TABLE;

Если же таблиц много то лучше сделать так:
mysqlcheck -uUSER -pPASSWORD  --repair --extended user_base

Ну а если уже совсем много то так, сделать для всех таблиц БД:
mysqlcheck -uUSER -pPASSWORD  --repair --extended -A
Ну а коли база данных загнулась то лучше восстановить из бэкапа. Но эта тему уже др. статьи

понедельник, 15 апреля 2013 г.

Драйвер TP-Link TL-WN727N в Linux Ubuntu

Ошибка Userenv 1505 Драйвер  TP-Link TL-WN727N в Linux Ubuntu
Опишу здесь случившуюся со мной ситуацию. Случилось как то мне настраивать  Wi-Fi карточки TP-Link TL-WN727N в Ubuntu. Так вот на старых версиях драйвера под таковой вообще не оказалось, а новых Ubuntu 11.10, Ubuntu 12.04, Ubuntu 12.10 он хоть и определился автоматически, и вроде бы как начал работать но иногда сам отваливался, иногда тормозил, иногда не хотел подсоединяться - вообщем куча проблем. Так вот опишу как это все решить. Покопавшись в интернетах, я нашел что проблема состоит в модулях rt2800.lib и rt2800usb к-е использует этот адаптер, и которые желателбно заменить, как читай ниже.
Итак приступим:
Откроем терминал и посмотрим подключенные USB устройства, с помощью команды
1) lsusb
lsusb - вывод списка подключенных USB устройств 
2) В списке видим и инуитивно догадываемся что 5370 Ralink Technology это есть наш любимый TP-Link TL-WN727N.
3) Качаем драйвера для адаптера отсюда Качаем с сайта www.mediatek.com драйвера для нашего адаптера RT8070 /RT3070 /RT3370 /RT5370 /RT5372 USB 
4) Клацаем на скачаный bzip2 архив правой кнопкой мыши и выбираем "Распаковать сюда" или "Extract here"
Разархивируем архив bz2 
5) Теперь мы получили tar архив опять также распаковываем его.
6) Переименуем например в tplink и скопируем в домашнюю папку
cp - r ./ tplink ~

7) Заходим в нашу папку cd ~/tplink/os/linux и находим файл config.mk
8) Находим следующие строки и меняем n на y
# Support Wpa_SupplicantHAS_WPA_SUPPLICANT=y

# Support Native WpaSupplicant for Network Maganger
HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y

9) Переходим в cd ~/tplink 
и выполняем следующее:

$ sudo make
$ sudo make install
$ sudo modprobe rt5370sta

10) Добавим наш драйвер в /etc/modules 
echo rt5370sta >> /etc/modules

11) Добавим ненужные модули rt2800 в blacklist, чтобы они не подгружались для этого в
/etc/modprobe.d/blacklist пропишем
blacklist rt2800usb
blacklist rt2800lib
blacklist rt2x00usb
blacklist rt2x00lib 

12) Перегружаемся и пробуем.
 

понедельник, 1 апреля 2013 г.

Ошибка Userenv 1505

Частенько случается, что  вроде Windows Server 2003 или Windows XP нормально работал, но врдруг при входе в систему появляется ошибка:  

"Системе Windows не удалось загрузить профиль пользователя, поэтому вход в систему выполнен с помощью стандартного системного профиля"
Что в данном случае делать. Итак если эта ошибка появляется на сервере терминалов можно попробовать след вариант:
1) Открыть редактор реестра набрав в окне "Пуск"-> "Выполнить" команду regedit.
2)Зайти в следующий раздел реестра:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management
3) Создать параметр DWORD с названием PoolUsageMaximum, либо если уже есть отредактировать существующий
4) Щелкнуть правой кнопокой мыши на нем и выбрать "Изменить"
5) Выбрать переключателем систему "Десятичная" и ввести значение 60.
6) Затем необходимо изменить значение "Paged Pool Size" установив знчение равное 8-ми
т.е fffffffff.
7)Перегрузить компьютер .

 На своем опыте скажу что данная инструкция не всегда помогает, т.к один раз мне попалась непонятная сборка ХР и данные ухищрения не помогли. Походу был битый файл ntuser.dat, т.к пришлось полностью сносить систему и ставить новою, с полным (именно полным а не быстром форматированием, т.к при полном помечаются битые секторы, а при быстром нет). Вообщем можете еще загрузиться с HirensBoot CD, выбрать режим Mini Windows XP. И в команлной строке ввести chkdsk c: /x  /f  /r. Может поможет. Кому попмгло пишите в коментарии.