Beyond Compare 4 Linux破解(转)

本文转自微信公众号:灰灰的Rom笔记

文章原址

建议访问微信原址,此文只作为记录转载。
文章中所需激活代码:

sudo sed -i "s/keexjEP3t4Mue23hrnuPtY4TdcsqNiJL-5174TsUdLmJSIXKfG2NGPwBL6vnRPddT7tH29qpkneX63DO9ECSPE9rzY1zhThHERg8lHM9IBFT+rVuiY823aQJuqzxCKIE1bcDqM4wgW01FH6oCBP1G4ub01xmb4BGSUG6ZrjxWHJyNLyIlGvOhoY2HAYzEtzYGwxFZn2JZ66o4RONkXjX0DF9EzsdUef3UAS+JQ+fCYReLawdjEe6tXCv88GKaaPKWxCeaUL9PejICQgRQOLGOZtZQkLgAelrOtehxz5ANOOqCaJgy2mJLQVLM5SJ9Dli909c5ybvEhVmIC0dc9dWH+/N9KmiLVlKMU7RJqnE+WXEEPI1SgglmfmLc1yVH7dqBb9ehOoKG9UE+HAE1Y--- BEGIN LICENSE KEY --- ayvZeJDYPBHS4J-1K6g6bDBuPoo0G-oGAq35blZtAoRqC-qQeSz28XAzX6nTx9laTMLRCp6nAIhHNGZ2ehkeUfbnFaxEeLvI8fJavn-XQLNbOumCLUqgdNbNMZiFRU03+OTQnw4V-E2YKTYi-LkgPzE6R-yIJGDNWfxH2AdpIgg8rlpsbrTs9Dt1zysUfvAEi0dKbmGIi3rqf7yWmwDh1AI5VyoWFIejvJwJLmlr2CjQ1VZ3DySCfBDuKcYmOCeK7jzEWPUnAw+f9360nIiiNEB0YGkwBkdtgaKEEik7aNiI3jXvp5r34wViVJCiX7m2y7pqBV9gZIvP9hP9KPnP++++ --- END LICENSE KEY -----vH1XX2XVGeEqYUY-Tsk7YBTz0WpSpoYyPgx6Iki5KLtQ5G-aKP9eysnkuOAkrvHU8bLbGtZteGwJarev03PhfCioJL4OSqsmQGEvDbHFEbNl1qJtdwEriR+VNZts9vNNLk7UGfeNwIiqpxjk4Mn09nmSd8FhM4ifvcaIbNCRoMPGl6KU12iseSe+w+1kFsLhX+OhQM8WXcWV10cGqBzQE9OqOLUcg9n0krrR3KrohstS9smTwEx9olyLYppvC0p5i7dAx2deWvM1ZxKNs0BvcXGukR+/g" BCompare

--- BEGIN LICENSE KEY --- ayvZeJDYPBHS4J-1K6g6bDBuPoo0G-oGAq35blZtAoRqC-qQeSz28XAzX6nTx9laTMLRCp6nAIhHNGZ2ehkeUfbnFaxEeLvI8fJavn-XQLNbOumCLUqgdNbNMZiFRU03+OTQnw4V-E2YKTYi-LkgPzE6R-yIJGDNWfxH2AdpIgg8rlpsbrTs9Dt1zysUfvAEi0dKbmGIi3rqf7yWmwDh1AI5VyoWFIejvJwJLmlr2CjQ1VZ3DySCfBDuKcYmOCeK7jzEWPUnAw+f9360nIiiNEB0YGkwBkdtgaKEEik7aNiI3jXvp5r34wViVJCiX7m2y7pqBV9gZIvP9hP9KPnP++++ --- END LICENSE KEY -----

Nextcloud14在使用CDN以及之后配置过程中的一些问题及解决办法(apache2虚拟主机)

 在本站使用CDN加速之后(www.corpama.com/nextcloud) ,发现Nextcloud在使用CDN加速之后,会出现文件列表无法显示,在执行Nextcloud自主安全检测时也会出现WebDav相关的错误,在经过搜索之后发现,因Nextcloud兼容性的问题,CDN的加速会导致Nextcloud的静态文件被加速,而其他部分不会被加速,所以会出现上述问题。
 随后将Nextcloud改为使用虚拟主机(disk.corpama.com),但在更改apache2配置文件以及/nextcloud/config/config.php文件时又出现了问题,Nextcloud的自检中会要求启用.htaccess但是更改上述配置文件时便出现问题,具体表现为:
Error updating .htaccess file, not enough permissions or "overwrite.cli.url" set to an invalid URL?
 最初我以为是apache2中关于nextcloud虚拟主机的配置文件出错,但在随后发现实际为Nextcloud中/nextcloud/config/config.php的配置有错,按照官方配置样例:
官方实例
中,关于.htaccess的配置在/nextcloud/config/config.php中为:

'overwrite.cli.url' => 'https://example.org',
'htaccess.RewriteBase' => '/',

 而照官方的配置便会出现Error updating .htaccess file, not enough permissions or "overwrite.cli.url" set to an invalid URL?的错误,后经搜索发现解决方法为将其改为如下配置:

'overwrite.cli.url' => 'https://example.org/',
'htaccess.RewriteBase' => '/',

即在域名最后加入斜杠,参考:GitHub

Docker service 批量部署Ubuntu基础镜像

在之前的实验中发现,直接从官方的Docker镜像仓库拉取的Ubuntu等基础镜像直接用于Docker service会导致部署的容器在运行中报错并反复重启,为了解决这一问题,我们可以通过撰写Dockerfile自行定制镜像,同时,为了解决Dockerfile的CMD在启动时只能运行一个服务的问题,我通过supervisor管理Dockerfile多任务的启动,从而实现在启动容器的时候同时启动apache2与openssh-server,以下是该Dockerfile内容:

FROM ubuntu:16.04

RUN apt-get update && apt-get install -y openssh-server wget supervisor
RUN mkdir /var/run/sshd
COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf
RUN echo 'root:Password' | chpasswd
RUN sed -i 's/PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config
# SSH login fix. Otherwise user is kicked off after login
RUN sed '[email protected]\s*required\s*[email protected] optional [email protected]' -i /etc/pam.d/sshd

ENV NOTVISIBLE "in users profile"
RUN echo "export VISIBLE=now" >> /etc/profile
RUN apt install -y apache2 net-tools vim nano
RUN rm -f /var/www/html/index.html

EXPOSE 22
EXPOSE 80/tcp
EXPOSE 80/udp
CMD ["/usr/bin/supervisord"]

接下来我们还要在文件夹中加入supervisord.conf配置文件:

[supervisord]
nodaemon=true
[program:sshd]
command=/usr/sbin/sshd -D

[program:apache2]
command=/bin/bash -c "/etc/init.d/apache2 start"

由此,我们便可制作一个可在docker service使用,同时还可以启动多个服务的镜像

PS.目前还只试做过基于Ubuntu的,基于CentOS的在后期会进行尝试。

在使用Aliyun ECS中,关于pip的一些问题

Aliyun会对于你的ECS中的pip仓库进行手动配置,使其使用Aliyun官方的pip仓库,而其仓库并比不上官方的仓库的更新速度(在写下这篇记录时,pip已更新到18.0而阿里云官方的仍保持在8.0),这会导致相当多基于python的需要pip安装的软件在安装时出现报错,解决办法为删除 ~/.pip/pip.conf,令其使用官方仓库。

在迁移时发现的letsencrypt的认证问题

在通常情况下本站使用letsencrypt的自动部署脚本进行认证,但是在此次迁移中发现letsencrypt的认证出现了问题。
具体表现为在certbot对本站进行认证时,http://www.corpama.com/.well-known/achmeacme-challenge/**************************, 对该网址的认证出现404报错,无法访问该网址,最后可发现问题出在/etc/apache2/sites-availble/000-default.conf的配置上,该项虚拟主机的名称中,我将*替换为www.corpama.com, 结果出现了404报错,将其保持默认不变,便没再出现报错。这是一个典型的错误的配置办法,正确的配置办法为设置SeverName项。

pyhton之面向对象(class)

类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。

Python 区分面向对象和面向类

对象:根据模板创建的实例,通过实例对象可以执行类中的函数

类:就是一个模板,模板里可以包含多个函数,函数里实现一些功能 

#创建类

Class Foo:  #class是关键字(表示要开始创建类了);Foo是新建的类名称
Def bar(self):  #self特殊参数(必填)
pass 
Obj = Foo 

面向对象的三大特性是指:封装、继承和多态。

  • 封装

封装,顾名思义就是将内容封装到某个地方,以后再去调用被封装在某处的内容。

class Foo:
  def __init__(self, name, age):
    self.name = name
    self.age = age

obj1 = Foo('chengd', 18) #此处的obj1就是self,“chengd”和“18”就是name和age属性
obj2 = Foo('python', 99) #此处的obj2就是self,“pyhton”和“99”就是name和age属性

调用被封装的内容时,有两种情况:

通过对象直接调用

class Foo:
   def __init__(self, name, age):
     self.name = name
     self.age = age

obj1 = Foo('chengd', 18)
Print (obj1.name)
Print (obj1.age)

通过self间接调用

class Foo:
  def __init__(self, name, age):
    self.name = name
    self.age = age
 
  def detail(self):
    print(self.name,self.age)  
obj1 = Foo('chengd', 18)
obj1.detail()  
# Python默认会将obj1传给self参数,即:obj1.detail(obj1),所以,此时方法内部的 self = obj1,即:self.name 是 chengd ;self.age 是 18
  • 继承

对于面向对象的继承来说,其实就是将多个类共有的方法提取到父类中,子类仅需继承父类而不必一一实现每个方法

 

class Animal:

     def eat(self):
         print ("%s 吃饭 " %self.name)

 
     def drink(self):
         print ("%s 喝奶 " %self.name)
  

      def shit(self):
          print ("%s 拉 " %self.name)

  
      def pee(self):
          print ("%s 撒" %self.name)

 

class Cat(Animal):

     def __init__(self, name):
         self.name = name


    def cry(self):
         print ('%s喵喵叫'%(self.name))

 
class Dog(Animal):

     

     def __init__(self, name):
          self.name = name       

     def cry(self):
         print ('%s汪汪叫'%(self.name))

文本内容主要转自:https://www.cnblogs.com/chengd/articles/7287528.html

关于在一些运行在Virtual Box中的稍旧版本的Cent OS与VB Tools的安装问题

稍旧版本的Centos7在安装VB Tools时会报错并提示安装kernel-devel

解决办法:

首先确保安装了gcc、make、perl:

yum install gcc make perl -y

其次在安装报错后更新一下系统中所有的软件:

yum upgrade -y

在更新了软件后重启就会发现问题神奇的解决了

PS:
报错信息大致如下:

This system is currently not set up to build kernel modules.
Please install the Linux kernel “header” files matching the current kernel
for adding new hardware support to the system.
The distribution packages containing the headers are probably:
kernel-devel kernel-devel-3.10.0-693.11.1.el7.x86_64

Ubuntu_LAMP_NextCloud(普通版_Ver1.0)

Ubuntu 16.04 LTS部署基础LAMP及NextCloud 13.0.1

##1.LAMP部分
(一)安装语言编码冲突解决模块

apt install language-pack-en-base -y
locale-gen en_US.UTF-8

(二)添加ppa源,本次安装使用ppa方式

apt install -y software-properties-common
LC_ALL=en_US.UTF-8 add-apt-repository ppa:ondrej/php

使用 apt-cache madison php 来查询php版本

apt install php=version
apt install php-fpm7.2

(三)安装apache2与相应连接模块

apt install -y apache2
apt install -y libapache2-mod-php7.2

(四)安装mysql-server及相应连接模块

apt install -y mysql-server (ubuntu在安装过程中便会出现root密码设置环节)
apt install -y libapache2-mod-auth-mysql php- mysql(如出现未找到包等报错,可略过)

(五)安装phpmyadmin,方便后续后台数据库管理

apt install -y phpmyadmin (安装过程中会出现选择,选apache2即可)

建议在LAMP安装完成后从let’s encrypt获取ssl证书来部署HTTPS

git clone https://github.com/letsencrypt/letsencrypt ,随后根据提示完成部署

至此,LAMP的基本安装完成

2.NextCloud部分

(一)从官网下载nextcloud项目包,并安装unzip以解压项目包

cd /var/www
apt install -y unzip
wget https://download.nextcloud.com/server/releases/nextcloud-13.0.1.zip
unzip nextcloud*.zip
chown -R www-data:www-data nextcloud/

(二)根据官网教程(English)更改相应的php模块设置与nextcloud的项目配置
官网配置教程:
https://docs.nextcloud.com/server/13/admin_manual/installation/source_installation.html#ubuntu-installation-label
完整安装nextcloud需要的所有php-moudle包:

apt install -y php-gd php-zip php-curl php-bz2 php-intl php-mcrypt openssl php-ldap php-smbclient php-imap php-gmp php-apcu php-memcached php-redis libcurl4-openssl-dev libssl-dev

创建/etc/apache2/sites-available/nextcloud.conf文件,并编辑:

(请参照官方教程)

使nextcloud.conf启用:

ln -s /etc/apache2/sites-available/nextcloud.conf /etc/apache2/sites-enabled/nextcloud.conf

启用各个模块:

a2enmod rewrite
a2enmod headers
a2enmod env
a2enmod dir
a2enmod mime
a2enmod setenvif

至此,NextCloud已可通过 www.corpama.com/nextcloud 进入,随后将完善nextcloud的安全与实用性配置
启用.htaccess文件,将此加入/nextcloud/config/config.php:

‘overwrite.cli.url’ => ‘https://example.org/nextcloud’,
‘htaccess.RewriteBase’ => ‘/nextcloud’,

随后完善HTTPS的安全设置,编辑/etc/apach2/sites-available/000-default-le-ssl.conf,在文件最后追加ifmoudle模块:


Header always set Strict-Transport-Security “max-age=15552000; includeSubDomains”

配置php.ini(在php-fpm之下)中的:
upload_max_filesize:
post_max_size:
memory_limit:
max_file_uploads =
注意:memory_limit > post_max_size > upload_max_filesize

参考:http://fjanchen.blogspot.com/2013/10/phpini.html

至此,nextcloud的所有安全性与实用性配置完成(最后可自行添加memcached完善性能)