Покажи Публикации - Ali Nebi
* Виж публикациите на потр. | Виж темите на потр. | Виж прикачените файлове на потр
Страници: 1 [2] 3 4 ... 27
16  Хумор, сатира и забава / Живота, вселената и някакви други глупости / Re: ЧЕСТИТ ПРАЗНИК НА СИСТЕМНИТЕ АДМИНИСТРАТОРИ! -: Jul 25, 2014, 12:38
Честито на всички колеги с пожелания за по-малко проблеми и повече време за други занимания!  [_]3
17  Linux секция за начинаещи / Настройка на програми / Re: Не мога да възстановя MySql backup -: Jul 06, 2014, 14:41
Съгласен съм, така също става. Аз лично предпочитам да не импортвам системните бази данни, поради различия във версии и т.н., които евентуално биха създали проблеми.

По-добрия начин е да се замени CREATE DATABASE със CREATE DATABASE IF NOT EXISTS
а за таблиците и вютата с CREATE OR REPLACE
http://dev.mysql.com/doc/refman/5.0/en/create-database.html
18  Linux секция за начинаещи / Настройка на програми / Re: Не мога да възстановя MySql backup -: Jul 05, 2014, 20:39
Файлът не е толкова голям. Това, което аз правя е следното:

Да кажем, че търсим база данни с име mydb. Отварям файла с техтови редактор (без значение какъв -nodpad++, vim, gedit, и т.н.), правя търсене на стринг за създаване на базата данни "CREATE DATABASE `mydb`, маркирам всичко преди него и ги трия, след това търся CREATE DATABASE, който е след този за mydb, маркирам всичко и трия. Така остава само базата данни за mydb. Просто бързо разчистване. Преди това си запази копие от оригиналния sql файл, за да не загубиш данни.
19  Linux секция за начинаещи / Настройка на програми / Re: Не мога да възстановя MySql backup -: Jul 05, 2014, 14:05
Здравей,

ами то си ти казва какъв е проблема:

#1007 - Can't create database 'information_schema'; database exists

Въпросът е защо ти трябва да възстановиш тоза база данни? Вероятно твоят бекъп съдържа повече от една база данни. Коригирай файла и премахни ненужните бази данни и таблици и импорти или просто си направи експорт на конкретната база данни, която искаш да възстановиш. За Windows аз ползвам Nodepad++
20  Програмиране / Общ форум / Re: if функцията в sh скрипт -: Jun 29, 2014, 12:15
Иначе можеш да слагаш номерация или пък друг вариант - актуалната версия си седи например eggdrop, а старите версии ги преименувай на eggdrop-20140629 примерно, като слагаш някаква дата.
21  Програмиране / Общ форум / Re: if функцията в sh скрипт -: Jun 29, 2014, 12:08
Здравей,

защо просто не презапишеш предишния файл или не искаш да го правиш?
22  Програмиране / Общ форум / Re: if функцията в sh скрипт -: Jun 29, 2014, 11:17
Здравей,

хвърли един поглед: http://www.tldp.org/LDP/Bash-Beginners-Guide/html/sect_07_01.html и тук http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO-6.html
23  Програмиране / Общ форум / Re: Странен проблем с shell script -: Jun 17, 2014, 11:33
Здравей,

Благодаря ти за бързия отговор и за помощта. Направих нужните промени, както ме посъветва и сега всичко работи правилно. Не очаквах, че INIT_DIR ще бъде недефинирана по начина по който го бях писал - научих нещо ново. :) Предполагам, че ако се сложи export пред дефиницията на INIT_DIR, то тогава ще е видима, дори и без промяна и добавка на кавичките (разбира се това не е добра идея, но пусто любопитство :) ).

Благодаря още веднъж neter и успешен ден!
24  Програмиране / Общ форум / Re: Странен проблем с shell script -: Jun 16, 2014, 22:48
Извинявам се за това и благодаря за преместването на темата в правилната категория.

Имам един init script в /etc/init.d/javapps.sh който ще се стартира при старт на сървъра. Идеята вътре в него да извиквам старт скриптове на няколко liferay инсталации (томкат), чиито инит скриптове се намират в /var/www/javapps/init.d/enabled директорията.

Главният инит скрипт има следния код:

Код:
#!/bin/bash -e

### BEGIN INIT INFO
# Provides:          javapps
# Required-Start:    $syslog $time $remote_fs
# Required-Stop:     $syslog $time $remote_fs
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: start Java Applications
# Description:       Debian init script for starting Java Applications
### END INIT INFO

DESC="Starting Java Applications"

# Name of the user to run as
USER=javapps

# Location of applications init directory
INIT_DIR=/var/www/javapps/init.d/enabled

RETVAL=0

. /lib/lsb/init-functions

if [ ! -e "$INIT_DIR" ]; then
         log_daemon_msg "Unable to locate init scripts directory. Please set INIT_DIR variable."
         exit 1
fi

start() {
        echo "Starting $DESC: "
        su -s /bin/bash -c "for INIT in $(ls $INIT_DIR); do $INIT_DIR/$INIT status; done" $USER >/dev/null
}

stop() {
        echo "Shutting down $DESC:"
        su -s /bin/bash -c "for INIT in $(ls $INIT_DIR); do $INIT_DIR/$INIT stop; done" $USER >/dev/null
}

status() {
        for INIT in $(ls $INIT_DIR); do
                $INIT_DIR/$INIT status;
        done
}

case "$1" in
  # Start command
  start)
        start
        log_end_msg $?
    ;;
  # Stop command
  stop)
        stop
        log_end_msg $?
    ;;
   # Restart command
   restart)
        stop
        sleep 5
        start
        ;;
   status)
        status
        ;;
  *)
    echo "Usage: /etc/init.d/$NAME {start|restart|stop|status}"
    exit 1
    ;;
esac
 
exit 0


Това е кодът на един от инит скриптовете (всички останали са много подобни на този), който се извикват от този /etc/init.d/javapps.sh във for цикъла:

Код:
#!/bin/bash -e

NAME=cbox-dev
DESC="Liferay CBOX Dev Build"
PIDFILE=/run/javapps/$NAME.pid

# Location of Java JDK
export JAVA_HOME=/var/www/javapps/tools/java7/jdk7

# Location of application's bin directory
CATALINA_HOME=/var/www/javapps/dev/liferay/centricbox/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27
CATALINA_START=bin/startup.sh
CATALINA_STOP=bin/shutdown.sh
PIDOF=/bin/pidof
RM=/bin/rm
CAT=/bin/cat

RETVAL=0

. /lib/lsb/init-functions

start() {
        log_daemon_msg "Starting $DESC ($NAME): "
        if [ ! -e "$CATALINA_HOME/$CATALINA_START" ]; then
                log_daemon_msg "Unable to locate starting script. Please set CATALINA_START variable."
                return 1
        fi

        if [ -f $PIDFILE ]; then
                PID=$($CAT $PIDFILE)
                RETVAL=$($PIDOF $PID)
                if [ $RETVAL -eq 1 ]; then
                        log_daemon_msg "$DESC is already running..."
                        return 1
                else
                        $RM -f $PIDFILE
                fi
        fi

        $CATALINA_HOME/$CATALINA_START > /dev/null
        RETVAL=$?
        [ $RETVAL -eq 0 ] && echo $! > $PIDFILE

        return $RETVAL
}

stop() {
        log_daemon_msg "Shutting down $DESC ($NAME): "
        if [ ! -e "$CATALINA_HOME/$CATALINA_STOP" ]; then
                log_daemon_msg "Unable to locate stoping script. Please set CATALINA_STOP variable."
                return 1
        fi

        if [ ! -f $PIDFILE ]; then
                echo "Unable to find PID file, $DESC is not running..."
                return 1
        else
                $CATALINA_HOME/$CATALINA_STOP > /dev/null
                RETVAL=$?
                [ $RETVAL -eq 0 ] && $RM $PIDFILE
                return $RETVAL
        fi
}

status() {
        if [ ! -f $PIDFILE ]; then
                log_daemon_msg "Unable to find PID file, $DESC is not running..."
                return 1
        else
                log_daemon_msg "$DESC is running..."
                return 0
        fi
}


case "$1" in
  # Start command
  start)
        start
        log_end_msg $?
    ;;
  # Stop command
  stop)
        stop
        log_end_msg $?
    ;;
   # Restart command
   restart)
        stop
        sleep 5
        start
        ;;
   status)
        status
        ;;
  *)
    echo "Usage: /etc/init.d/$NAME {start|restart|stop|status}"
    exit 1
    ;;
esac
 
exit 0

В главният скрипт, който е предназначен да се пуска при старт на сървъра, има FOR цикъл, но спира веднага след първата итерация, без значение колко скрипта има в директорията, където се намира.

25  Програмиране / Общ форум / Странен проблем с shell script -: Jun 16, 2014, 22:25
Здравейте,

имам много странен проблем с шел скипт и ще се радвам на вашата помощ. Идеята е следната - имам инит главен инит скрипт, който извиква допълнителни инит скриптове в един цикъл, за да пусне съответните приложения.

Пример:
Код:
for INIT in $(ls $INIT_DIR); do
                $INIT_DIR/$INIT start;
done

Проблемът, който се появява е следният. В скриптовете, които се извикват в цикъла имам return и exit в зависимост от това коя част се изпълнява в процеса на извикване. При първата итерация първият скрипт се изпълнява и цикълът приключва, което не е правилно, защото в самата директория има и други скриптове - ls ги връща. Потествах малко и се оказа, че проблемът се получава от return и exit редовете в скрипта и поради някаква причина това причинява изход от цикъла.

Ще се радвам ако ми дадете идеи къде евентуално бъркам. Между другото ако си ги пускам инит скриптовете на приложенията ръчно през терминала, то те си работят без проблем.

Благодаря предварително!
26  Linux секция за начинаещи / Настройка на програми / Re: Проблем с влизане под root във Fedora 18 -: Apr 24, 2013, 18:21
elFO: Ако не искаш да си имаш много главоболия и да се чудиш какво става, то по-добре послушай колегите горе и си преинсталирай федората с диск правен от iso свалено от официалния сайт на Федора :)
27  Linux секция за начинаещи / Настройка на програми / Re: Автоматично стартиране на процес, ако той е спрял -: Apr 23, 2013, 13:54
Здравей,

би могъл да ползваш и 'monit'.
28  Сигурност / Системна Сигурност / Re: Защита на apache от F5 с iptables -: Mar 29, 2013, 22:29
Аз съм ползвал mod_evasive с prefork и си работеше без проблем. Може да пробваш на тестова машина или на същия сървър само за определен сайт. Пусни му тестове и ще видиш дали има резултат, но до колкото си спомням си работеше без проблем.

PS: http://shebangme.blogspot.com/2009/09/modevasive-howto-step-by-step.html (инфо за компилация за prefork)
29  Linux секция за начинаещи / Настройка на програми / Re: Как да защитя /etc/passwd , /etc/shadow -: Feb 05, 2013, 19:33
Не знам до колко би помогнало, но какво ще стане ако сетнеш open_basedir и ползваш mod_security? open_basedir би трябвало да блокира достъпа до външни файлове и директории извън описаните в него, а mod_security трябва да помогне за по-добрата защита на системата от страната на апаче.

Другите биха могли да допълнят или дадат други идеи.

Поздрави!
30  Linux секция за напреднали / Хардуерни и софтуерни проблеми / Re: Сайт с множество ip-та? -: Jan 15, 2013, 23:58
Здравей,

Щом знаеш как до пуснеш двата доставчика на една машина едновременно, то тогава бих казал че решението е лесно.

Нагласи апаче да слуша на *:80 и си сетни виртуалните хостове да са с *:80 вместо 192.ххх.ххх.ххх:80. Така независимо от къде идва трафика, то апаче ще го обслужи.

Сменяш си ДНС записите без проблем.

Надявам се да съм бил полезен.
Страници: 1 [2] 3 4 ... 27