标签: debian

  • 查看Debian版本

    可以使用如下命令来查看debian的版本号。

    cat /etc/debian_version
  • 解决 Debian vi 不能使用方向键的问题

    在使用 Debian 时,发现通过 Vi 编辑文件时不能使用方向键,解决办法如下:

    第一种方法:

    在终端打开VI配置文件:vi ~/.vimrc

    输入:set nocompatible

    保存后,vi 就可以使用上下左右方向键了。

    第二种方法:

    安装 vim ,执行 sudo apt install vim,安装完成后,vi 命令就可以使用方向键了。

  • Debian 11 安装 Mariadb

    安装

    第一步,执行安装命令:

    apt install -y mariadb-server

    第二步,执行如下命令进行安全配置,该命令可以配置数据库密码等相关操作。

    mysql_secure_installation

    配置mariadb远程访问

    通过如下命令授权 root 用户远程访问,xxxxx 是密码。

    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'xxxxxx';

    然后进入 /etc/mysql/mariadb.conf.d,编辑 50-server.cnf。

    注释掉下面的行(在前面加#)

    bind-address            = 127.0.0.1

    最后重启服务即可。

    systemctl restart mysql 

    提示:

    由于mysql/mariadb配置文件有点多,如果找不到该配置在哪个文件里面,可以通过如下命令进行查找:

    grep -r "bind-address" /etc/mysql/*
  • Debian11安装新版PHP

    今天给一台国内的服务器重装了 debian 11 ,由于 debian 11 带的 php 版本是 7.4,有点老,所以我们可以使用 debian 开发者 Ondřej Surý 维护的 php 源 deb.sury.org 。具体用法如下:

    首先,使用下面的命令安装所须的软件包:

    apt install ca-certificates apt-transport-https software-properties-common -y

    安装所须软件包后,使用以下命令将 Sury 存储库添加到 APT:

    echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/sury-php.list

    然后,使用以下命令下载并添加 GPG 密钥:

    wget -qO - https://packages.sury.org/php/apt.gpg | apt-key add -

    上述添加 GPG 密钥的命令会提示 Warning: apt-key is deprecated,但是可以执行成功,如果不想要报 Warning 可以换成下面的命令:

    wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg

    完成后,使用以下命令更新存储库:

    apt update

    到此,sury 源添加完成。

    如果要安装 php 的最新版本,可以执行:

    apt install php-fpm php-mysql php-mbstring php-curl php-dom php-imagick php-zip php-gd php-intl
    

    如果要安装指定的版本,例如安装 php8.0,可以执行:

    apt install php8.0-fpm php8.0-mysql php8.0-mbstring php8.0-curl php8.0-dom php8.0-imagick php8.0-zip php8.0-gd php8.0-intl
  • Debian11安装Postfix

    为了能让 WordPress 发送通知邮件,需要在服务器上配置MTA(Mail Transfer Agent),常见的MTA服务有 Sendmail、Postfix 等。

    Sendmail 是 Unix 系统的标准邮件传输代理,而 Postfix 邮件服务器安全性更好一些。

    这里我们选择的是 Postfix,用来为 WordPress 提供仅发送服务。

    安装

    通过如下命令安装 Postfix

    apt install postfix

    安装过程中,会出现配置界面。如果已安装,可以使用 dpkg-reconfigure postfix 重新打开该界面。

    我们将选择 Internet Site 并按回车。

    对于系统邮件名称,我们将使用我们网站的域名,对于本站,就是 wujie.me 。

    这两步配置完后,等待安装完成,WordPress 就可以发送通知邮件了。

    其它配置

    如果想对 Postfix 进行更详细的配置,可以配置文件 /etc/postfix/main.cf。

    例如为了增强安全性,需要把 SMTP 服务改为只允许本地使用,那么可以把 inet_interfaces = all 改成 inet_interfaces = loopback-only

     

    改完之后,需要重启 postfix 服务:

    systemctl restart postfix
  • Debian 10 PHP 7.4编译安装imagick扩展

    下载 imagick 源码,解压并进入目录

    wget https://pecl.php.net/get/imagick-3.4.4.tgz
    tar xf imagick-3.4.4.tgz
    cd imagick-3.4.4

    安装依赖

    apt install -y libmagickcore-dev libmagickwand-dev autoconf

    进入 imagick 代码目录后执行 phpize

    /usr/local/php/php74/bin/phpize

    配置

    ./configure --with-php-config=/usr/local/php/php74/bin/php-config --with-imagick=/usr/local/imagemagick

    编译安装

    make && make install

    编译安装完成后会显示扩展模块编译到了哪个目录,记录下这个目录的路径,以便在 php.ini 中进行配置,我这里是 /usr/local/php/php74/lib/php/extensions/no-debug-non-zts-20190902/

    配置 php.ini

    extension_dir = "/usr/local/php/php74/lib/php/extensions/no-debug-non-zts-20190902/"
    extension=imagick.so

    保存并退出,重启 php-fpm 即可。

  • Debian10编译PHP7.4问题记录

    系统镜像是基于阿里云的 Debian10.6。

    configure参数:

    ./configure --prefix=/usr/local/php/php74 --enable-gd --with-curl --enable-fpm --enable-cgi --with-openssl --enable-mbstring --with-pdo-mysql --with-zlib --with-zip --with-mysqli --enable-opcache --enable-mysqlnd --with-libxml --with-jpeg --with-freetype --with-pdo-sqlite --with-sqlite3 --enable-cli --enable-shared --enable-exif
    

    问题记录

    问题:
    configure: error: Package requirements (openssl >= 1.0.1) were not met:
    No package ‘openssl’ found

    解决:

    apt install libssl-dev

    问题:
    configure: error: Package requirements (sqlite3 > 3.7.4) were not met:
    No package ‘sqlite3’ found

    解决:
    apt-get install libsqlite3-dev

    问题:
    configure: error: Package requirements (libcurl >= 7.15.5) were not met:
    No package ‘libcurl’ found

    解决:
    apt-get install libcurl4-gnutls-dev

    问题:
    configure: error: Package requirements (oniguruma) were not met:
    No package ‘oniguruma’ found

    解决:
    apt install libonig-dev

    问题:
    configure: error: Package requirements (libzip >= 0.11 libzip != 1.3.1 libzip != 1.7.0) were not met:
    No package ‘libzip’ found

    解决:
    apt-get install libzip-dev

    另外,编译时遇到 virtual memory exhausted: Cannot allocate memory 的错误,这是由于阿里云的镜像默认没开启swap的原因,创建一个 swap 内存再编译即可。

    总结一下,在阿里云提供的 debina10 镜像上编译安装 PHP7.4 ,必须安装的依赖有:

    apt install -y  libssl-dev libsqlite3-dev libcurl4-gnutls-dev libonig-dev  libzip-dev

    一点感想:与 CentOS7 相比,Debian10 安装一些依赖非常方便,不用像 CentOS 一样要到处找源,要安装“野包”才能编译。

  • add-apt-repository universe  报错命令不存在

    可以使用下面的命令代替

    apt-get install -y software-properties-common

  • 使用apt-get为PHP安装apache模块支持

    在使用apt-get装好apache2之后,执行 

    sudo apt-get install libapache2-mod-php

    即可使apache支持PHP

    同理,也可以用apt-get安装PHP的mysql模块

    apt-get install php-mysql

    其它模块同理安装 

  • Debian查看http请求总数

    Debian查看http请求总数

    ps -ef|grep http|wc -l