Quantcast
Viewing all 1318 articles
Browse latest View live

Cent OS - [Проблема с репозиториями]

Cent OS

YUM / Установщик пакетов

Устанавливаем из заданного репозитория

$ yum install--enablerepo=remi-php56 php-pecl-ssh2

Проблема с репозиториями

$ yum remove centos-release-SCL
$ yum install centos-release-scl
$ yum update
$ yum-y upgrade ca-certificates

Yii Framework 2 - [Расширения / Проекты]

Yii Framework 2

Схема работы приложений

Instalation / Установка

В данной ветке содержатся только стабильные версии пакетов. Установка производится из готового шаблона проекта "yiisoft/yii2-app-basic"

Устанавливаем композер
curl -s http://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
chmod 755 /usr/local/bin/composer
Устанавливаем зависимый пакет композера и создаем типовой проект из готового шаблона yii2-app-basic
composer create-project --prefer-dist yiisoft/yii2-app-basic basic

или из yii2-app-advanced

composer create-project --prefer-dist yiisoft/yii2-app-advanced advanced
Обновляем vendors
rm ./composer.lock
composer install --prefer-dist
  • --stability=dev - указание composer на разрешение скачать dev версии пакетов
  • --prefer-dist - указание composer на установку пакетов без создания git репозитория

Шаблоны проектов

Установка расширений или модулей

php composer.phar require --prefer-dist yiisoft/yii2-gii "*"

или в composer.json

"yiisoft/yii2-gii": "*"

Версии

В ./composer.jsonнеобходимо вставить ниже следующие обозначения версий

Stable
"minimum-stability": "stable",
Development
"minimum-stability": "dev",

Расширения / Проекты

История изменений

Документация / Статьи

Базовые настройки

Установка дополнительных генераторов проекта (Gii)

Видео уроки

Russian

Ukraine

English

Other

Виджеты / Widgets

Виджеты / Widgets

Коллекции виджетов

bootstrap

Editors

Form

Fields

Multi inputs

Upload / File input

Tags / Select / Select2 / Multiselect / Autocomplete

select2

other

tags

tagEditor
Bootstrap Tags Input

Карты / Maps / GEO

Editable / Table / Tables / Grids

Image

Трансформации

Отображение и кеширование

Tree / Draggable / Sortable

Tree

    • $categories= Category::find()->addOrderBy('lft')->all();$level=0; 
      foreach($categoriesas$n=>$category){if($category->level==$level){echo Html::endTag('li')."\n";}elseif($category->level>$level){echo Html::beginTag('ul')."\n";}else{echo Html::endTag('li')."\n"; 
              for($i=$level-$category->level;$i;$i--){echo Html::endTag('ul')."\n";echo Html::endTag('li')."\n";}} 
          echo Html::beginTag('li');echo Html::encode($category->title);$level=$category->level;} 
      for($i=$level;$i;$i--){echo Html::endTag('li')."\n";echo Html::endTag('ul')."\n";}

Other

Flags

Pajx

Charts / Графики

Pickes

Дата / Время Date picker

Pagination

Panels / Boxes / Div

SEO

ExtJs

Angular

bootstrap-media-lightbox

fancybox

lightcase

colorbox

thickbox

photoswipe

Мобильные устройства

Навигация

js:vuejs - создано

Страница была перемещена по адресу vuejs.

Проекты для начала разработки на Yii2 - [Webapp-Template / Skeleton]

Проекты для начала разработки на Yii2

Webapp-Template / Skeleton / Start kit

Сборки

Обратные ссылки

Yii2 шаблоны / темы - [Themes / Темы]

Yii2 шаблоны / темы

Менеджеры

Themes / Темы

Статьи / Ссылки

PHP

PHP

Debian/Ubuntu

Установка

5.4

$ apt-get install php5 php5-fpm dh-php5 php5-cgi php5-cli php5-common php5-curl php5-dev php5-gd php5-geoip php5-intl php5-json php5-mcrypt php5-memcache php5-memcached php5-mongo php5-mysql php5-readline php5-redis php5-sqlite php5-ssh2 php5-xcache php5-xsl

7.0

$ apt install php7.0 php7.0-fpm php7.0-common php7.0-curl php7.0-gd php7.0-intl php7.0-mbstring php7.0-mcrypt php7.0-mysql php7.0-opcache php7.0-sqlite3 php7.0-xml php7.0-xsl php7.0-xdebug

7.1

$ apt install php7.1 php7.1-fpm php7.1-common php7.1-curl php7.1-gd php7.1-intl php7.1-mbstring php7.1-mcrypt php7.1-mysql php7.1-opcache php7.1-sqlite3 php7.1-xml php7.1-xsl php7.1-xdebug

7.2

$ apt install php7.2 php7.2-fpm php7.2-common php7.2-curl php7.2-gd php7.2-intl php7.2-mbstring php7.2-mysql php7.2-opcache php7.2-sqlite3 php7.2-xml php7.2-xsl php7.2-xdebug

7.3

$ apt install php7.3 php7.3-fpm php7.3-common php7.3-curl php7.3-gd php7.3-intl php7.3-mbstring php7.3-mysql php7.3-opcache php7.3-sqlite3 php7.3-xml php7.3-xsl php7.3-xdebug

Обновление с 7.0 на 7.1

$ sudo apt install apt-transport-https lsb-release ca-certificates
$ sudowget-O/etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
$ apt install lsb-release
$ sudosh-c'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
$ sudo apt update
$ apt install $(dpkg--get-selections|grep-v"deinstall"|grep php7.0|cut-f1|tr'\n'' '|tr'7.0''7.1')
  • apt-get install lsb-release

Обновление с 7.0 на 7.2

$ sudo apt install apt-transport-https lsb-release ca-certificates
$ sudowget-O/etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
$ apt install lsb-release
$ sudosh-c'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
$ sudo apt update
$ sudo apt install $(dpkg--get-selections|grep-v"deinstall"|grep php7.0|cut-f1|tr'\n'' '|tr'7.0''7.2')

CentOS

cd/opt
wget http://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.gz
tar zxvf glibc-2.14.tar.gz
cd glibc-2.14mkdir build
cd build
../configure --prefix=/opt/glibc-2.14make-j4makeinstall
$ yum install epel-release yum-utils -y
$ yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
$ yum-config-manager --enable remi-php72
$ yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysql -y

Установка расширений Pecl

$ apt installautoconfautomake libtool m4 php7.1-dev
$ pear config-set php_suffix 7.1
$ pecl install event

Поиск расширений

Статьи /Модули / API / Интересные примеры кода

Докуменация

PhpDoc

  • @var tag
  • @return
  • @property type (string, integer)
  • @see tag
  • @inheritdoc
  • @author
  • @since

Errors / Ошибки

PHP inline

  • php -r 'echo md5("123");' - запуск с shell строки

Статьи/Модули

WEB crawling library for PHP / Парсеры PHP

REST Клиенты

Node Socket

Видеоуроки

Manjaro

Manjaro

Image may be NSFW.
Clik here to view.

Manjaro — это дистрибутив, основанный на Arch Linux и расчитанный на менее опытных пользователей. Основынми отличиями от Arch являются дополнительный этап стабилизации пакетов перед включением в основной репозиторий, наличие GUI-установщика системы, графического интерфейса для настроек (manjaro settings manager) и GUI-оболочки для пакетного менеджера pacman (Pamac или Octopi) и поставка дистрибутива в нескольких редакциях с разными грaфическими окружениями.

Документация


Arch Linux

Debian, Ubuntu - [Скрипты инсталяции]

Debian, Ubuntu

Настройки

Скрипты инсталяции

Сохранение/Восстановление/Обновление

Менеджеры окон

Полезное

Ссылки

Статьи

Ссылки на внешние источники

Скрипт установки для Debian 10

Скрипт установки для Debian 10

Описание

Установка

# nano debian-install.sh
# bash ./debian-install.sh

В debian-install.sh вставляем ниже следующий текст и нащимаем Ctrl-x, затем y (сохраняем и выходим)

deb http://mirror.selectel.ru/debian buster main non-free contrib
deb-src http://mirror.selectel.ru/debian buster main non-free contrib

deb http://mirror.selectel.ru/debian-security buster/updates main contrib non-free
deb-src http://mirror.selectel.ru/debian-security buster/updates main contrib non-free
#!/bin/shdistrib="buster" 
function info 
{echo" "echo-e"--> $1"echo" "} 
function check_result(){if[$1-ne0]; thenecho"Error: $2"exit$1fi} 
function promptyn (){whiletrue; doread-p"$1" yn
        case$ynin[Yy]*)return0;;[Nn]*)return1;;*)echo"Please answer yes or no.";;esacdone} 
function prompt (){whileread-p"$1" variable &&[[-z"$variable"]] ; doecho"$1"done 
    echo$variable;
} 
function installpkg(){for pkg in $@doif[ $(dpkg-query -W-f='${Status}'$pkg2>/dev/null |grep-c"ok installed")-eq0];
  thenecho"Install $pkg ..."apt-get install$pkg;
  fidone} 
function set_default_value(){evalvariable=\$$1if[-z"$variable"]; theneval$1=$2fiif["$variable"!= 'yes']&&["$variable"!= 'no']; theneval$1=$2fi} 
function h(){history|grep"$@";
} 
function install_elasticsearch(){VERSION=$1es_memory='1024m' 
    apt-get install openjdk-8-jdk
    rm/etc/alternatives/javaln-s/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java/etc/alternatives/java 
    exportJAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
    exportPATH=$JAVA_HOME/bin:$PATH 
    if[!-f elasticsearch-$VERSION.deb ]; thenwget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-$VERSION.deb  
    fi 
    sudodpkg-i elasticsearch-$VERSION.deb
 
    # be sure you add "action.disable_delete_all_indices" : true to the config!! 
    info "Configuring ElasticSearch ${VERSION}" 
    sed-i"/LimitFSIZE=infinity/a LimitMEMLOCK=infinity"/usr/lib/systemd/system/elasticsearch.service
    sed-i"s/#bootstrap.memory_lock: true/bootstrap.memory_lock: true/"/etc/elasticsearch/elasticsearch.yml
    sed-i"s/#network.host: 192.168.0.1/network.host: 0.0.0.0/"/etc/elasticsearch/elasticsearch.yml
    sed-i"s/#MAX_LOCKED_MEMORY=unlimited/MAX_LOCKED_MEMORY=unlimited/"/etc/default/elasticsearch
    sed-i"s/-Xms2g/-Xms${es_memory}/"/etc/elasticsearch/jvm.options
    sed-i"s/-Xmx2g/-Xmx${es_memory}/"/etc/elasticsearch/jvm.options
 
    # enabled
    update-rc.d elasticsearch defaults
 
    # start script
    service elasticsearch restart
 
    if[-f/usr/bin/plugin ]; thenrm/usr/bin/plugin
    fi 
    sudoln-s/usr/share/elasticsearch/bin/elasticsearch-plugin /usr/bin/plugin
} 
if["x$(id -u)"!= 'x0']; then
    check_result 1"Script can be run executed only by root"fi 
apt-get update&&apt-get upgrade-y
installpkg apt apt-utils wgetsudonano rename debconf-utils pwgen mailutils curl dirmngr -y 
default_pass=$(pwgen -s181-n-c-s -y) 
hostname=$(prompt "Enter the Internet domain name (e.g. nixcraft.com) : ");
 
if promptyn "Do you wish to install default programs? [mc, git, etc] " ; then
    info "Install default programs";
    installpkg mc git mercurial bash-completion bzip2 numactl dnsutils -yfi 
if promptyn "Do you wish to install developers programs? [gcc, g++, etc] "; then
    info "Install development soft";
    installpkg checkinstall gcc build-essential g++ libboost-dev libboost-program-options-dev libboost-all-dev libevent-dev uuid-dev clang cmake -yfi 
if promptyn "Do you wish to install system monitors? [htop, iptraf] "; then
    info "Install system monitors";
    installpkg htop iptraf jnettop iftop -yfi 
if promptyn "Do you wish to uninstall systemd and install systemv? "; then
    installpkg sysvinit-core sysvinit-utils -ycp/usr/share/sysvinit/inittab /etc/inittab
fi 
if promptyn "Do you wish to install FTP Server (PRO-Ftpd)? "; then
    installpkg proftpd -yfi 
if promptyn "Do you wish to install MySql? "; then
    installpkg software-properties-common -yif promptyn "Do you wish to install MySql (Percona) (y) or Mariadb (n)?"; then 
        apt-key adv--recv-keys--keyserver keyserver.ubuntu.com 0xcbcb082a1bb943db
 
        echo"
        # Percona
        #deb http://repo.percona.com/apt ${distrib} testing
        #deb-src http://repo.percona.com/apt ${distrib} testing
        ">/etc/apt/sources.list.d/mysql.list
        apt-get update 
        installpkg percona-server-server-5.7 percona-server-client-5.7 percona-server-common-5.7 percona-toolkit -y
        sevice mysql start
        check_result $?"mysql start failed" 
        info "[client]\npassword='$f'\n">/root/.my.cnf
        chmod600/root/.my.cnf
        mysql -e"SET PASSWORD FOR 'root'@'localhost' = PASSWORD('${default_pass}');"
        mysql -e"UPDATE mysql.user SET plugin = '' WHERE user = 'root' AND host = 'localhost';"
        mysql -e"DELETE FROM mysql.user WHERE User=''"
        mysql -e"DROP DATABASE test">/dev/null 2>&1
        mysql -e"DELETE FROM mysql.db WHERE Db='test' OR Db='test\\_%'"
        mysql -e"DELETE FROM mysql.user WHERE user='' or password='';"
        mysql -e"FLUSH PRIVILEGES" 
        info "Install MySQL (Percona)"
        update-rc.d mysql defaults
        set_default_value 'mysql''true' 
    else# for sid       apt-key adv--recv-keys--keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8
        # for jessieapt-key adv--recv-keys--keyserver keyserver.ubuntu.com 0xcbcb082a1bb943db
 
        echo"
        # MariaDB 10.1 repository list - created 2016-08-05 19:23 UTC
        # http://downloads.mariadb.org/mariadb/repositories/
        deb [arch=amd64,i386] http://mirror.timeweb.ru/mariadb/repo/10.1/debian ${distrib} main
        deb-src http://mirror.timeweb.ru/mariadb/repo/10.1/debian ${distrib} main
        ">/etc/apt/sources.list.d/mysql.list
        apt-get update 
        installpkg mariadb-server mariadb-client mariadb-common --allow-unauthenticated
        service mysql start
        check_result $?"mysql start failed" 
        info "[client]\npassword='${default_pass}'\n">/root/.my.cnf
        chmod600/root/.my.cnf
        mysql -e"SET PASSWORD FOR 'root'@'localhost' = PASSWORD('${default_pass}');"
        mysql -e"UPDATE mysql.user SET plugin = '' WHERE user = 'root' AND host = 'localhost';"
        mysql -e"DELETE FROM mysql.user WHERE User=''"
        mysql -e"DROP DATABASE test">/dev/null 2>&1
        mysql -e"DELETE FROM mysql.db WHERE Db='test' OR Db='test\\_%'"
        mysql -e"DELETE FROM mysql.user WHERE user='' or password='';"
        mysql -e"FLUSH PRIVILEGES" 
        info "Install MySQL (Mariadb)"
        update-rc.d mysql defaults
        set_default_value 'mysql''true'fifi 
if promptyn "Do you wish to install PostgreSql? "; then
    installpkg postgresql-9.6 postgresql-contrib-9.6-yecho"ALTER USER postgres WITH ENCRYPTED PASSWORD '${default_pass}';"|sudo-u postgres psql
    echo"
local      all     postgres     md5
">>/etc/postgresql/9.6/main/pg_hba.conf
 
    service postgresql restart
 
fi 
if promptyn "Do you wish to install Nginx? "; thenwget-q http://nginx.org/keys/nginx_signing.key -O-|apt-key add -
 
    echo"
    # nginx
    deb http://nginx.org/packages/debian ${distrib} nginx
    deb-src http://nginx.org/packages/debian ${distrib} nginx
    ">/etc/apt/sources.list.d/nginx.list
    apt-get update 
    service nginx stop >/dev/null 2>&1
    installpkg nginx -y
    service nginx start
    check_result $?"nginx start failed" 
    info "Install Nginx"
    update-rc.d nginx defaults
    set_default_value 'nginx''true'fi 
if promptyn "Do you wish to install PHP-FPM? "; thenwget-q http://www.dotdeb.org/dotdeb.gpg -O-|apt-key add -
 
    php_ver=$(prompt "Please select php version like 5, 7.0, 7.1, 7.2, 7.3: ") 
    echo"
    # php-fpm dotdeb
    deb http://packages.dotdeb.org ${distrib} all
    deb-src http://packages.dotdeb.org ${distrib} all
    ">/etc/apt/sources.list.d/php-fpm.list
    apt-get update 
    service php${php_ver}-fpm stop >/dev/null 2>&1 
    if["$php_ver" == 5]; then
          installpkg -u-t stable php${php_ver} php${php_ver}-dev php${php_ver}-sqlite php${php_ver}-mcrypt php${php_ver}-xsl php${php_ver}-cli php${php_ver}-common php${php_ver}-mysql php${php_ver}-gd php${php_ver}-fpm php${php_ver}-cgi php-pear php${php_ver}-curl php${php_ver}-pgsql php${php_ver}-mbstring-yelse
          installpkg -u-t stable php${php_ver} php${php_ver}-dev php${php_ver}-sqlite php${php_ver}-mcrypt php${php_ver}-xsl php${php_ver}-cli php${php_ver}-common php${php_ver}-mysql php${php_ver}-gd php${php_ver}-fpm php${php_ver}-cgi php-pear php${php_ver}-curl php${php_ver}-redis php${php_ver}-pgsql php${php_ver}-mbstring-yfi 
    echo"cgi.fix_pathinfo = 0">>/etc/php/${php_ver}/fpm/php.ini
    service php${php_ver}-fpm start
    check_result $?"php${php_ver}-fpm start failed" 
    info "Install PHP-FPM"
    update-rc.d php${php_ver}-fpm defaults
    set_default_value "php${php_ver}-fpm"'true' 
    curl -sS https://getcomposer.org/installer | php ----install-dir=/usr/local/bin --filename=composer
fi 
if promptyn "Do you wish to install RabbitMQ? "; thenwget-q http://packages.erlang-solutions.com/debian/erlang_solutions.asc -O-|apt-key add -
    wget-q https://www.rabbitmq.com/rabbitmq-signing-key-public.asc -O-|apt-key add -
 
    echo"
    # Erlang
    deb http://packages.erlang-solutions.com/debian ${distrib} contrib
 
    # RabbitMq
    deb http://www.rabbitmq.com/debian/ testing main
    ">/etc/apt/sources.list.d/rabbitmq.list
    apt-get update 
    service rabbitmq-server start
    installpkg rabbitmq-server -y
    check_result $?"rabbitmq-server start failed" 
    info "Install RabbitMQ"
    update-rc.d rabbitmq-server defaults
    set_default_value 'rabbitmq-server''true'fi 
if promptyn "Do you wish to install Redis server? "; then
    installpkg redis-server -y
    service redis-server start
    check_result $?"redis-server start failed" 
    info "Install Redis"
    update-rc.d redis-server defaults
    set_default_value 'redis-server''true'fi 
if promptyn "Do you wish to install Elasticsearch server? "; then
    info "Elasticsearch versions you can see here: https://github.com/elastic/elasticsearch"elasticsearch_ver=$(prompt "Please select Elasticsearch version like 5.6.4, 5.6.6, 5.6.16, 6.1.1: ")
    install_elasticsearch $elasticsearch_verfi 
if promptyn "Do you wish to install DNS server? "; thenif promptyn "Do you wish to install bind (y) or pdns (n) server?"; then
        installpkg bind9 bind9utils bind9-libs -y
        service bind9 start
        info "Install DNS Server"
        set_default_value 'bind''true'else
        installpkg pdns-server pdns-backend-mysql pdns-recursor -y
        info "Install DNS Server"
        set_default_value 'pdns''true'fifi 
if promptyn "Do you wish to install Shorewall? "; then
    installpkg shorewall -yfi 
if promptyn "Do you wish to install Postfix/Exim4? "; then
    installpkg exim4-daemon-heavy mailutils -y
    service exim4 stop >/dev/null 2>&1
    gpasswd -a Debian-exim mail
 
    touch/etc/exim4/exim4.conf.template
    touch/etc/exim4/dnsbl.conf
    touch/etc/exim4/spam-blocks.conf
    touch/etc/exim4/white-blocks.conf
    chmod640/etc/exim4/exim4.conf.template
    rm-rf/etc/exim4/domains
    mkdir-p/etc/exim4/domains
 
    rm-f/etc/alternatives/mta
    ln-s/usr/sbin/exim4 /etc/alternatives/mta
    service sendmail stop >/dev/null 2>&1 
    service postfix stop >/dev/null 2>&1
    service exim4 start
 
    check_result $?"exim4 start failed"
    update-rc.d exim4 defaults
    set_default_value 'exim''true' 
    dpkg-reconfigure exim4-config
fi 
if promptyn "Do you wish to install Dovecot? "; then
    gpasswd -a dovecot mail
    chown-R root:root /etc/dovecot*
    service dovecot stop >/dev/null 2>&1
    installpkg dovecot-imapd dovecot-pop3d dovecot-common -y
    service dovecot start
 
    check_result $?"dovecot start failed"
    update-rc.d dovecot defaults
    set_default_value 'dovecot''true'fi 
if promptyn "Do you wish to install fail2ban? "; then
    installpkg fail2ban -y 
    if["$exim" = 'no']; thenfline=$(cat/etc/fail2ban/jail.local |grep-n exim-iptables -A2)fline=$(echo"$fline"|grep enabled |tail-n1|cut-f1-d -)sed-i"${fline}s/true/false/"/etc/fail2ban/jail.local
    fi 
   update-rc.d fail2ban defaults
    service fail2ban start
    check_result $?"fail2ban start failed"fi 
if promptyn "Do you wish to install Mysql backup system? "; then
    info "Install MySql backup system";
 
    apt-get update
    installpkg git-ygit clone https://github.com/Mirocow/mysql_utils.git /root/mysql_utils
 
    echo'
 
    # Run MySql backup system
    25 6    * * * root /bin/bash  ~/mysql_utils/backup.sh --dir="/var/backups/mysql" --compress=bzip2 --exclude="mysql" --lifetime="3 day ago"
    '>>/etc/crontab   
fi 
if promptyn "Do you wish to install create site script? "; then
    info "Install create site scriptm";
    wget https://raw.githubusercontent.com/Mirocow/site-create/master/site-create.sh -O/root/site-create.sh
fi 
rm/var/cache/apt/archives/*.deb -f 
if promptyn "Do you wish to set default shell settings? "; then
    info "Base system configure"echo'
    '>> ~/.bashrc
    source ~/.bashrc
 
    echo'
    set tabsize "2"
    '>> ~/.nanorc
fi 
apt-get autoremove-y

Менеджер пакетов APT: вопросы и ответы - [Update apt-get]

Менеджер пакетов APT: вопросы и ответы

Update apt-get

$ apt-get autoclean
$ apt-get autoremove
$ apt-get-finstall
$ apt-key list|grep"expired:"
$ apt-get update
$ apt-get upgrade
$ apt-key adv--keyserver keyserver.ubuntu.com --recv-keys FCEF32E745F2C3D5

Upgrade aptitude

$ aptitude update
$ aptitude dist-upgrade
$ reboot
$ aptitude update
$ aptitude-finstall
$ reboot

Q: Downgrade или Как понизить версию пакета

Q: Что такое apt?

A: apt - это Advanced Packaging Tool, система управления пакетами, то есть набор программ для установки, удаления, поиска бинарных пакетов определенных форматов.

Q: В каких дистрибутивах используется apt?

A: apt первоначально был разработан для дистрибутива Debian и формата пакетов deb. Ныне используется во всех клонах Debian (Ubuntu, Kubuntu, Mepis, Xandros), а также в некоторыхх rpm based дистрибутивах (например, в Altlinux).

Q: Как обновить дистрибутив

  • apt-get -f dist-upgrade

Q: Какие утилиты входят в состав пакета apt?

apt-cache - средство для работы с кэшами пакетов (например, поиса пакетов по ключевым словам), apt-extracttemplates, apt-sortpkgs, apt-cdrom, apt-ftparchive, apt-key, apt-config, apt-get - средство установки и удаления пакетов, apt-setup

Q: Как обновить список пакетов?

A: apt-get update пройдет по всему списку указанному у вас в /etc/apt/sources.list и обновит списки пакетов по всем репозиториям.

Q: Списки я обновил, как теперь обновить сами пакеты?

A: apt-get upgrade - менее "интеллектуальный" вариант, обновляющий пакеты, которые есть в системе; apt-get dist-upgrade - более "интеллектуальный" вариант, который следит за тем, не сменили ли пакеты имя и пытающийся обновлять более важные пакеты даже ценой удаления менее важных.

Q: А я не хочу все обновлять, как мне обновить только один пакет?

A: Точно так же, как и установка пакета: apt-get install <пакет>

Q: Как удалить пакет?

A: apt-get remove <пакет>

Q: Как удалить все пакеты программы?

A: apt-get remove --purge percona*****

Q: А после удаления точно ничего от пакета не останется?

  • A: Для того, чтобы точно не осталось, лучше пользоваться apt-get remove --purge<пакет>
  • A: или apt-get purge <пакет>

Q: Как мне узнать, как называется пакет для какой-то определенной цели?

A: Попробуйте поиск по ключевым словам при помощи apt-cache search <слова>

Q: Мне принесли компакты дистрибутива, которых у меня не было, как мне их добавить?

A: apt-cdrom add должно помочь

Q: Мне кажется, что меня взломали и что-то сделали с <пакетом>

A: apt-get install --reinstall вернет пакет к изначальному состоянию, то есть такому, какой он был на свежеустановленной системе.

Q: Очень хочется создать локальное зеркало, в какую сторону смотреть?

A: apt-move скорее всего решит полностью вашу проблему, для него достаточно указать, где лежит архив файлов и куда выложить ваше зеркало.

Q: А подробнее про apt-move можно?

А: Можно: apt-move update - переносит из /var/cache/apt/archives пакеты в директорию локального зеркала (указывается в /etc/apt-move.conf как переменная LOCALDIR=path_to). По сути apt-move update является выполнением последовательности команд

$ apt-move get $ apt-move move $ apt-move delete $ apt-move packages apt-move get - формирует мастер-файл; apt-move move - переносит пакеты из кэша apt в локальное зеркало; apt-move delete - удаляет устаревшие пакеты; apt-move packages - создает Packages.gz и Sources.gz дерева локального зеркала Q: У меня пакеты все уже удалени из кэша, а друг тоже хочет весь "свежак", который у меня установлен... A: Простой скрипт, выполненный в пустом каталоге, соберет в нем пакеты, которые установлены в системе:

dpkg --get-selections | \

grep -v "deinstall" |  \
awk '{print $1}' | \
xargs dpkg-repack

Q: Есть подозрение, что из-за моих экспериментов в системе много мусора...

A: Попробуйте пакет debfoster, он при первом запуске спросит у вас о необходимости пакетов и удалит все лишнее.

Q: Где по умолчанию лежат пакеты, которые мне скачал apt-get?

A: в /var/cache/apt/archives

Q: Как мне поставить один *.deb пакет в систему?

A: При условии того, что удовлетворены все зависимости, dpkg -i <пакет> приведет к желаемому результату.

Q: Как заставить apt работать через proxy-сервер?

A: Либо установив переменную окружения при помощи

Q: Я хочу определить в каком пакете необходимый мне файл (например, libodbc.so).

А: apt-file - утилита поиска по содержимому пакетов. apt-file update - получает файл Contents-<ARCH>.gz, следует учесть, что исходя из того, что проект Debian довольно большой, то и файл получится соответствующий. apt-file search <файл> - поиск пакета с указанным файлом.

Пример:

apt-file search libodbc.so
unixodbc: usr/lib/libodbc.so.1
unixodbc: usr/lib/libodbc.so.1.0.0
unixodbc-dev: usr/lib/libodbc.so

Q: А как просмотреть полный список содержимого пакета?

А: apt-file list <пакет> - отображает содержимое указанного пакета

Q: Я больше не собираюсь использовать apt-file, а Contents-.gz занимает место на диске.

А: apt-file purge удалить все Contents-<ARCH>.gz. По поводу дополнительных опций - man apt-file

Q: Как мне найти неиспользуемые (осиротевшие) пакеты?

А: deborphan без указания ключа осуществляет поиск в разделе библиотек, с указанием ключа -a поиск ведется во всех разделах. Имеется и интерфейс к deborphan - orphaner, поставляются в одном пакете.

Q: есть локальный репозиторий из дистрибутивных дисков. Packages.gz сделал, а вот как сделать Contents-<ARCH>.gz для того, чтобы apt-file'ом можно было пользоваться?

A:

apt-ftparchive contents . | gzip > Contents-i386.gz также с помощью apt-ftparchive можно создавать Sources.gz и Packages.gz apt-ftparchive sources . | gzip > Sources.gz apt-ftparchive packages .| gzip > Packages.gz

Q: хочется создать дистрибутив некоторых выбранных пакетов и залить его на болванки. При этом хочется поместить на болванки и пакеты, не установленные в моей системе. Как это объяснить apt-move?

  • A: Вариант номер один - посмотреть в сторону jidgo, возможно, он вас устроит
  • A: Вариант номер два - получить недостающие пакеты, но не устанавливать их в систему с помощью аpt-get install -d <пакеты>.

Q: У меня стоит мешанина из stable, testing, unstable и даже кое-что из experimental установил. Как мне сделать, чтобы все в таком виде и обновлялось?

A: Чтобы этого добиться, поместите следующую строку в /etc/apt/apt.conf:

APT::Default-Release "testing"; Затем, при установке пакетов из, например, нестабильного дистрибутива, просто используйте ключ -t: $ apt-get -t unstable install имя_пакета

Q: Как узнать расширенное описание пакета

  • apt-cache -f search apache2-utils
  • apt-cache show sysstat

Q: Как исправить зависимости в пакетах

  • apt-get -f install

Q: Как apt-get заставить не обновлять пакет

apt-get

  • sudo apt-mark hold package_name
  • sudo apt-mark unhold package_name

aptitude

  • sudo aptitude hold package_name
  • sudo aptitude unhold package_name

dpkg

  • echo “wine hold” | dpkg --set-selections
  • echo “wine install” | dpkg --set-selections

/etc/apt/preferences

  • A: Внести изменения в /etc/apt/preferences
  • A: или в /etc/apt/preferences.d/название_пакета_или_сходное_по_спыслу

Пример:

Package: firefox-3.0
Pin: release n=hardy
Pin-Priority: -10

Package: firefox-3.0
Pin: release n=intrepid
Pin-Priority: 900

Package: php5-fpm
Pin: version 5.4*
Pin-Priority: 991

Q: Как узнать, какие пакеты можно обновить?

  • apt-get install apt-show-versions
  • apt-show-versions

Q: Как узнать какии пакеты заморожены/стоит пометка о запрете обновления

  • dpkg --get-selections|grep hold

Q: Как обновить из конкретного репозитория?

  • apt-get install php5/sid
  • apt-get install php5/unstable
  • apt-get -t unstable install php5

Q: Как узнать версию пакета?

  • apt-cache show -t stable php5-common|grep "Version:"
    • -t stable - указывает на используемый репозиторий (stable, unstable, sid итд)

Q: Как обновить толь заданный пакет/программу?

  • apt-get install --only-upgrade bash Image may be NSFW.
    Clik here to view.
    :!:
  • apt-get install --only-upgrade postfix

Q: Как обновить обновить ключ?

  • apt-key list | grep "expired:"
    pub   2048R/7BD9BF62 2011-08-19 [expired: 2016-08-17]
$ apt-key adv--keyserver keys.gnupg.net --recv-keys F76221572C52609D
$ apt-key adv--keyserver keyserver.ubuntu.com --recv-keys F76221572C52609D

Screen - создано

Screen

$ screen-list
$ screen-x[session id]
$ screen-X-S[session id]kill

Ключи/Опции

  • -a Force all capabilities into each window's termcap.
  • -A -[r|R] Adapt all windows to the new display width & height.
  • -c file Read configuration file instead of '.screenrc'.
  • -d (-r) Detach the elsewhere running screen (and reattach here).
  • -dmS name Start as daemon: Screen session in detached mode.
  • -D (-r) Detach and logout remote (and reattach here).
  • -D -RR Do whatever is needed to get a screen session.
  • -e xy Change command characters.
  • -f Flow control on, -fn = off, -fa = auto.
  • -h lines Set the size of the scrollback history buffer.
  • -i Interrupt output sooner when flow control is on.
  • -list or -ls. Do nothing, just list our SockDir.
  • -L Turn on output logging.
  • -m ignore $STY variable, do create a new screen session.
  • -O Choose optimal output rather than exact vt100 emulation.
  • -p window Preselect the named window if it exists.
  • -q Quiet startup. Exits with non-zero return code if unsuccessful.
  • -r Reattach to a detached screen process.
  • -R Reattach if possible, otherwise start a new session.
  • -s shell Shell to execute rather than $SHELL.
  • -S sockname Name this session <pid>.sockname instead of <pid>.<tty>.<host>.
  • -t title Set title. (window's name).
  • -T term Use term as $TERM for windows, rather than "screen".
  • -U Tell screen to use UTF-8 encoding.
  • -v Print "Screen version 4.00.03 (FAU) 23-Oct-06".
  • -wipe Do nothing, just clean up SockDir.
  • -x Attach to a not detached screen. (Multi display mode).
  • -X Execute <cmd> as a screen command in the specified session

Команды

  • Ctrl-a c — создать новое окно Screen
  • Ctrl-a n — переместиться в следующее окно
  • Ctrl-a p — переместиться в предыдущее окно
  • Ctrl-a d — отключиться от текущей сессии screen, при этом все команды продолжат свое выполнение
  • Ctrl-a K — «убить» выбранное окно (нужно если программа в окне зависла и не хочет умирать самостоятельно)
  • Ctrl-a " — вывести список всех окон
  • Ctrl-a A — изменить название текущего окна (удобно, чтобы различать окна между собой, например поставить названия «localhost», «ssh 1.2.3.4» и т.п.

Программное обеспечение - [P]

Программное обеспечение

0-9

A

B

C

D

  • dpkg - Утилита установки пакетов
  • Dovecot - Postfix + Dovecot + MYSQL (IMAP/POP3-сервер)
  • dovecot_exim - Exim4 + Dovecot + MYSQL
  • du - Вычисляем занимаемое место на диске
  • DD - Клонирование диска/партиций
  • dhclient - Dhclient
  • Deluge - Torrent client
  • Dialog - Альтернативой dialog может служить whiptail, который даже присутствует в некоторых системах по умолчанию.

E

F

G

H

I

  • iotop - то же что и обычный top по CPU, но только по диску
  • LVM - Изменения размера логических томов LVM
  • IpSet - Блокируем много IP адресов с помощью ipset и iptables
  • iftop - display bandwidth usage on an interface
  • IPTraf - IP Network Monitoring Software
  • fail2ban - блокирует по IP найденных нарушителей

J

K

  • KVM - Виртуализация на Linux

L

M

N

  • ntpdate - Синхронизация времени (sync time)
  • Nagios - система мониторинга сетей
  • nano - Консольный редактор
  • NSD - DNSсервер
  • nc - netcat
  • nohup - UNIX-утилита, запускающая указанную команду с игнорированием сигналов потери связи (SIGHUP) (запуск в фоне). Image may be NSFW.
    Clik here to view.
    :!:

O

P

Q

R

S

T

U

V

W

X

Y

Z

Операционные системы


Библиотека знаний

В этой WIKI собранно большое кол-во информационных материалов по профессиональной деятельности WEB программиста. Данный материал собран со всех уголоков интернета или написан собственноручно и охватывает большой спектр знаний: Операционные системы, Програмное обеспечение, Программирование, Сети.

«Пишите код, исходя из того, что все программисты, которые будут сопровождать вашу программу, — склонные к насилию психопаты, знающие, где вы живёте.»
— Мартин Голдинг

Библиотека знаний

du - Disk Usage

du - Disk Usage

du Пример вывода:

8       ./share/gegl-0.2/plug-ins
12     ./share/gegl-0.2
16     ./share/rhythmbox
56     ./share/icons/hicolor/16x16/apps
60     ./share/icons/hicolor/16x16
208    ./share/icons/hicolor/256x256/apps
212    ./share/icons/hicolor/256x256
64     ./share/icons/hicolor/48x48/apps
68     ./share/icons/hicolor/48x48
56     ./share/icons/hicolor/32x32/apps
60     ./share/icons/hicolor/32x32
404    ./share/icons/hicolor
408    ./share/icons

Для того, чтобы вывести такую же информацию об определенной папке, укажите её при вызове команды, например:

$ du ~/.local
$ du/home

Чтобы получить значения размеров папок в более удобном для восприятия формате, а именно в килобайтах (K), мегабайтах (M) или гигабайтах (G) используйте ключ -h:

$ du-h
$ du-h/home

Пример вывода:

8.0K    ./.vim
24K    ./scripts
48K    ./.ssh
16K    ./.keychain
2.2M    ./.lftp
2.4M    .

Для того, чтобы узнать общий размер, который занимает определенная папка вызовите команду du с ключем -s:

$ du-s/home

Пример результатов:

291210112    /home/

Лучше будет запустить команду du с ключами -s и -h совместно:

$ du-hs/home

Тогда вывод воспринять легче:

278G    /home/

Ключ -c используется для подсчета общей суммы размеров папок так:

du -chs /etc /root/ Результат:

56M    /etc
62M    /root/
118M    итого

Другая удобная опция команды du это ключ --max-depth, который задает глубину папок для просмотра. Если задать глубину равной единице, то можно посмотреть общие размеры всех папок по указанному пути. Выполните:

$ du-h--max-depth=1du-h--max-depth=1 ./|sort-hr

Если отсутствует на сервере версия du с возможностью использовать --max-depth=1

$ find ./-maxdepth1-type d -execdu-hs{} \;

Пример результатов работы:

2.9M    ./.nbi
948K    ./.local
104K    ./.gconf
12K    ./.gnome2
4.0K    ./.gnome2_private
44K    ./.filezilla
356K    ./.cache
12K    ./Desktop
4.0K    ./.gvfs
1.2M    ./.gem
12K    ./.dbus
86M    ./.cpan
26M    ./perl5
1.5M    ./.java
80K    ./.config
16K    ./.ssh
4.0K    ./.pulse
165M    .

Ключи команды du

Ключ Действие
-a, --all Вывести размер для всех файлов, а не только папок
--apparent-size Вывести действительные размеры, а не занимаемое на диске место; хотя действительный размер обычно меньше, иногда он может быть больше из-за дыр в файлах, внутренней фрагментации, косвенных блоков и тому подобного
-B, --block-size=РАЗМЕР Выводить результаты в определенных единицах измерения. Например, -BM выводит размеры в единицах, равных 1,048,576 байтам, т.е. в мегабайтах
-b, --bytes Эквивалентно --apparent-size --block-size=1
-c, --total Выводить общий итог
-D, --dereference-args Следовать только по символьным ссылкам, которые перечислены в командной строке
--files0-from=ФАЙЛ Вывести отчёт об использовании диска, чьи имена файлов перечислены в файле ФАЙЛ
-H Эквивалентен ключу --dereference-args (-D)
-h, --human-readable Выводить размеры в удобном для человека виде (например, 1K 234M 2G)
--si Как -h, но используется делитель 1000, а не 1024
-k Синоним --block-size=1K
-l, --count-links Суммировать размеры, если есть несколько жёстких ссылок на один объект
-m Синоним --block-size=1M
-L, --dereference Следовать по символьные ссылки
-P, --no-dereference Не следовать по символьным ссылкам (по умолчанию)
-0, --null Завершать каждую выводимую строку 0-м байтом, а не символом новой строки
-S, --separate-dirs Не включать размер папок
-s, --summarize Выводить размер только для папки, переданной в качестве аргумента
-x, --one-file-system Оставатся в пределах одной файловой системы
-X, --exclude-from=ФАЙЛ Исключать файлы, совпадающие с каким-либо образцом из ФАЙЛА
--exclude=ОБРАЗЕЦ Исключать файлы, соответствующие ОБРАЗЦУ
-d, --max-depth=N Глубина следования по субдиректориям
--time Показывать время последней модификации всех файлов в каталоге или всех его подкаталогов
--help Показать эту справку и выйти
--version Показать информацию о версии программы du

SSH клиент / сервер - [Документация]

SSH клиент / сервер

Генерация ключа

$ ssh-keygen-t rsa -C"admin@d7.debian.loc"
$ ssh-keygen-t dsa -C"admin@d7.debian.loc" 
$ cat ~/.ssh/id_rsa.pub |ssh user@hostname"cat>> ~/.ssh/authorized_keys" 
$ ssh user@hostname
$ sudosed-i"s/^\#RSAAuthentication.*$/RSAAuthentication yes/g"/etc/ssh/sshd_config
$ sudosed-i"s/^\#PubkeyAuthentication.*$/PubkeyAuthentication yes/g"/etc/ssh/sshd_config
$ sudo/etc/init.d/sshd restart

Отладка подключения

ssh -vvv -o PreferredAuthentications=publickey name@host -p port
  • -o PreferredAuthentications=publickey - опции аунтефикации

Документация

starred - создано

Для просмотра своих избранных страниц вам нужно залогиниться.

Красивые клипы для души - [Chaos Magic]

Красивые клипы для души

Best rock female

Best rock male

Лейблы

Chanels

0-9

A

Amaranthe

ALESTORM

ARCH ENEMY

Angel Nation

B

BATTLE BEAST

BABYMETAL

BEAST IN BLACK

Beyond The Black

C

Chaos Magic

Clémentine Delauney (VISIONS OF ATLANTIS)

D

DELAIN

DORO

DIAMANTE

DEE SNIDER

DUST IN MIND

E

End Of The Dream

Edge Of Paradise

EXIT EDEN

EPICA

Emerald Mind

Eternal Idol

EDENBRIDGE

ELUVEITIE

EXTIZE

F

Five Finger Death Punch

G

GLORYHAMMER

H

Helion Prime

Halestorm

I

Icon For Hire

IGNEA

J

K

KAMELOT

KOBRA AND THE LOTUS

Kalidia

L

LEAVES' EYES

LOUNA

LORD OF THE LOST

M

Minniva ( Cover by Minniva ft Quentin Cornet )

Metalite

Marco Hietala (Nightwish)

N

Nightwish

Nicoletta Rosellini

O

OMNIMAR

P

PHANTASMA

Powerwolf

R

RAGE OF LIGHT

S

SEMBLANT

STORM SEEKER

STITCHED UP HEART

Symfobia

T

Tarja (Nightwish)

The Pretty Reckless

THY SHADE

The Dark Element

TEMPERANCE

U

UNLEASH THE ARCHERS

V

VISIONS OF ATLANTIS

W

Within Temptation

Wind Rose

Walk In Darkness

WARKINGS

X

XANDRIA

Y

Z

Russian bands

М

Х

Хелависа

Э

Элизиум

Эпидемия

Эльфийская рукопись: Сказание на все времена

Последнее Испытание

Сокровище Энии

Официальные каналы груп

Остальные

Сборники

Концерты

Viewing all 1318 articles
Browse latest View live