centos6 搭建chrony-NTP服务器

OpenStack实验,需要搭建NTP服务器,由于电脑配置太低,虚拟机使用centos6.5。
安装chrony服务,3台虚拟机,一台controller,2台node。
yum install chrony -y

controller配置/etc/chrony.conf
修改服务器地址:
server ntp.aliyun.com iburst
server ntp1.aliyun.com iburst

修改允许ip网段

Allow NTP client access from local network.

allow 192.168/16
任意地方添加如下:
server NTP_SERVER iburst

nod配置/etc/chrony.conf
修改服务器地址:
server ntp.aliyun.com iburst
server ntp1.aliyun.com iburst

修改允许ip网段

Allow NTP client access from local network.

allow 192.168/16
任意地方添加如下:
server control iburst

开启chrony命令:
/etc/init.d/chronyd start

如果报错:
Starting chronyd: Could not open keyfile /etc/chrony.keys for writing [FAILED]

修改/etc/chrony.conf:

Specify file containing keys for NTP and command authentication.

keyfile /etc/chrony.keys

Specify key number for command authentication.

commandkey 1

重新启动即可

centos退出后台运行程序screen

安装screen程序 yum install screen -y
常用命令:
1、创建screen会话
可以先执行:screen -S download ,screen就会创建一个名字为download的会话。

2、暂时离开,保留screen会话中的任务或程序
当需要临时离开时(会话中的程序不会关闭,仍在运行)可以用快捷键Ctrl+a d(即按住Ctrl,依次再按a,d)

3、恢复screen会话
当回来时可以再执行执行:screen -r lnmp 即可恢复到离开前创建的lnmp会话的工作界面。如果忘记了,或者当时没有指定会话名,可以执行:screen -ls screen会列出当前存在的会话列表,

4 关闭screen的会话
执行:exit ,会提示:[screen is terminating],表示已经成功退出screen会话。

5 远程演示
首先演示者先在服务器上执行 screen -S test 创建一个screen会话,观众可以链接到远程服务器上执行screen -x test 观众屏幕上就会出现和演示者同步。

6常用快捷键
Ctrl+a c :在当前screen会话中创建窗口
Ctrl+a w :窗口列表
Ctrl+a n :下一个窗口
Ctrl+a p :上一个窗口
Ctrl+a 0-9 :在第0个窗口和第9个窗口之间切换

在home目录下创建.screenrc加入以下内容

编码

defutf8 on
defencoding utf8
encoding UTF-8 UTF-8
新建screen,则能正确显示。

摘自:https://blog.csdn.net/hnjb5873/article/details/106235674

centos6.5换可用yum源

源进入/etc/yum.repos.d,备份一下cp CentOS-Base.repo CentOS-Base.repo_bak
方法一:应该是用不了
首先去阿里下载yum
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
然后编辑CentOS-Base.repo用vi替换命令
:%s/$releasever/6.10
:%s/centos/6.10/centos-vault/6.10
修改完以后
yum clean all
yum makecache
方法二:

# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client.  You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#

[base]
name=CentOS-6.10 - Base - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-vault/6.10/os/$basearch/
        http://mirrors.aliyuncs.com/centos-vault/6.10/os/$basearch/
        http://mirrors.cloud.aliyuncs.com/centos-vault/6.10/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-6

#released updates
[updates]
name=CentOS-6.10 - Updates - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-vault/6.10/updates/$basearch/
        http://mirrors.aliyuncs.com/centos-vault/6.10/updates/$basearch/
        http://mirrors.cloud.aliyuncs.com/centos-vault/6.10/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-6

#additional packages that may be useful
[extras]
name=CentOS-6.10 - Extras - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-vault/6.10/extras/$basearch/
        http://mirrors.aliyuncs.com/centos-vault/6.10/extras/$basearch/
        http://mirrors.cloud.aliyuncs.com/centos-vault/6.10/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-6

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-6.10 - Plus - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-vault/6.10/centosplus/$basearch/
        http://mirrors.aliyuncs.com/centos-vault/6.10/centosplus/$basearch/
        http://mirrors.cloud.aliyuncs.com/centos-vault/6.10/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-6

#contrib - packages by Centos Users
[contrib]
name=CentOS-6.10 - Contrib - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-vault/6.10/contrib/$basearch/
        http://mirrors.aliyuncs.com/centos-vault/6.10/contrib/$basearch/
        http://mirrors.cloud.aliyuncs.com/centos-vault/6.10/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-6

修改完以后
yum clean all
yum makecache

摘自:https://blog.csdn.net/qq_36667170/article/details/118616497

CentOS7安装配置MySQL并开启远程登录

1、先检查要安装的Linux服务器cglib版本号,命令 strings /lib64/libc.so.6 | grep GLIBC ,查看其是否有相应cglib版本

2、cd /usr/local 下载MySQL5.7
老版本:https://downloads.mysql.com/archives/community/
国内镜像:http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-5.7/

3、解压压缩包:tar -xzvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz
并且重命名:mv mysql-5.7.23-linux-glibc2.12-x86_64 mysql

4、创建用户组
groupadd mysql
useradd -r -g mysql mysql

5、进入到mysql目录下创建数据目录并赋予权限
创建目录
mkdir data
赋予权限
chown mysql:mysql -R /usr/local/mysql

6、配置my.cnf
vi /etc/my.cnf
datadir改为自己创建的data路径 basedir改为自己安装的mysql路径

[mysqld]
bind-address=0.0.0.0
port=3306
datadir=/usr/local/mysql/data
basedir=/usr/local/mysql
socket=/usr/local/mysql/mysql.sock
symbolic-links=0
lower_case_table_names=1
character_set_server=utf8mb4
explicit_defaults_for_timestamp=true

[mysqld_safe]
log-error=/var/log/mysql/mysqld.log
pid-file=/var/log/mysql/mysqld.pid

创建上述配置中的log目录和pid目录 并赋予权限
mkdir /var/log/mysql
mkdir /var/run/mysql
touch /var/log/mysql/mysqld.log
touch /var/log/mysql/mysqld.pid
chown -R mysql:mysql /var/log/mysql/

7、初始化数据库
进入到mysql的bin目录下
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --user=mysql --initialize
目录一定要正确,否则启动不成功
看到最后一行是临时密码:-wPJi*<fz4zX
2021-03-31T15:24:39.285206Z 1 [Note] A temporary password is generated for root@localhost: 7Hjj3+bhpu/v
PS:如果初始化报错error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
就安装:yum install libaio-devel.x86_64

8、启动数据库

把mysql放到本地系统服务中
cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

启动mysql
service mysql start # 启动命令
service mysql status # 查看状态
service mysql stop # 停止命令

9、设置环境变量 开机自启 远程连接
修改配置

vi /etc/profile
在最后一行增加如下配置

export PATH=$PATH:/usr/local/mysql/bin

开机自启
chmod +x /etc/init.d/mysql
chkconfig --add mysql
查看开启
chkconfig --list
如果看到mysql的服务,并且3,4,5都是on的话则成功,如果是off,则键入
chkconfig --level 345 mysqld on

10、 查看初始密码 并更改密码
mysql -u root -h 127.0.0.1 -p
输入密码
进入MySQL,更改密码
SET PASSWORD FOR 'root'@localhost=PASSWORD('XXXXXXXXXXXXXX');

11、开启远程登陆
远程连接设置
登录mysql mysql -u -p
use mysql;
然后查看user表
select user,host from user;
开启远程

GRANT ALL PRIVILEGES ON *.* TO  'root'@'192.168.5.%' IDENTIFIED BY 'XXXpasswordXXX' WITH GRANT OPTION;

%代表所有,也可以写IP,后面是密码,可以和root密码不同
再次查看use mysql,如果root没有%可以使用

update user set host = '%' where user = 'root';

开启远程权限
flush privileges; # 重载系统权限
exit; # 退出

主要摘自:https://www.icode9.com/content-2-898758.html,一处地方是错的,MySQL开启不了,也有其他地方的
虚拟机测试,本地连接已成功,阿里云应该还要开端口,回头部署……


出现
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
进入bin目录执行
$ ./mysqld_safe --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data &

linux/CentOS 安装firefox火狐浏览器配置无头模式

1、yum seach firefox
选择64位狐火浏览器安装
whereis firefox
查看安装目录

2、下载geckodriver
https://npm.taobao.org/mirrors/geckodriver/v0.29.0/geckodriver-v0.29.0-linux64.tar.gz
解压放到firefox安装目录
复制一份到/usr/bin ,省去指定路径

3、把firefox安装目录加入环境变量PATH
export PATH="$PATH:/usr/lib64/firefox"

4、测试使用

from selenium import webdriver

options = webdriver.FirefoxOptions()
options.add_argument('-headless')
driver = webdriver.Firefox(firefox_options=options)
driver.get('http://www.baidu.com')
title = driver.title
print('title:'+title)
now_url = driver.current_url
print('URL:' + now_url)
driver.close()

CentOS6安装Python3

1、安装Python3相关包

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make 

2、下载Python3

wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tar.xz

3、编译安装

#解压

xz -d Python-3.6.4.tar.xz
tar -xf Python-3.6.4.tar

#进入解压后的目录,依次执行下面命令进行手动编译

./configure --prefix=/usr/local/python36   
make && make install

4、添加环境变量

echo 'export PATH=$PATH:/usr/local/python36/bin' >> ~/.bashrc

5、添加链接

ln -s /usr/local/python36/bin/python3.6 /usr/bin/python

输入python进入Python环境

Linux常用命令详解

看到哪里就加上~~~
1、mkdir:make directorys 创建目录 例如:mkdir /modys 在/目录下创建modys目录
2、ls:list 列表目录 例: ls / 列出/目录下的目录和文件 -l (long)长格式 -d (directorys) 查看目录
3、Linux的绝对路径是从/目录开始的 相对路径不从/开始
4、touch:摸 如果没有文件创建一个,如果有就更改时间戳
5、cd:change directory 改变目录 cd /etc 进入到etc 目录
6、pwd:print work directory 显示当前所在路径
7、echo 'I am studying linux'>python 如果没有python,创建并写入;如果有,清空并写入;>输出重定向,把前面的内容写入到后面的文件中,会清除文件原有的内容
8、echo 'I am styding linux'>>python 如果没有python文件,创建并写入,如果有,内容后面追加;>>追加输出重定向,把前面的内容追加到后面的文件中,不清除文件原有内容
9、echo 配合>和>>可以为文件覆盖或追加内容
10、>或1> 输出重定向:把前面的内容输入到后面的文件中,会清除文件原有内容
11、>或1>> 追加输出重定向:把前面输出的内容追加到后面文件的尾部,不会清除文件原有内容
12、<或0< 输入重定向:输入重定向用于改变命令的内容,后面指定输入内容,前面跟文件名 例如:xargs -n 2 <test.py 把test.py里的内容以2个词一组的分类 xargs 从标注你输入获取内容创建和执行命令 -n 数字 分组
13、 <或0<< 追加输入重定向:后面跟字符串,用来表示“输入结束”,也可用ctrl+d来结束输入 例如:cat >>test.py <<EOF 内容写完后 EOF结尾 就结束 必须用cat。echo不行
14、2> 错误重定向:把错误信息输入到后边的文件中,会删除原有内容
15、2>> 错误追加重定向:把错误信息追加到后边的文件中,不会删除原有内容

箭头的指向就是数据的流向   

16、cp copy 拷贝文件或目录,默认不能拷贝目录 -r:recursion 递归,用于复制目录及文件 -a 相当于-pdr 包含-r -p 连同档案的属性复制过去,而非使用默认属性
17、rm remove 删除目录和文件 -f(force)强制,-r(recursive)递归,用于删除目录 强制删除命令要慎用
18、mv move 移动文件或目录
19find 查找 -type 文件类型f (file)文件,d(directory)目录,c(character)字符文件,b(block)块设备,s(socket),l(link), -name 文件名
20、标准输入(stdin): 代码0,使用<或<<。数据流向从右向左 标准正确输出(stdout): 代码1,使用>或>>。数据从左向右 标准错误输出(stderr):代码2 受用2>或2>> 例1:echo '123123' >> 123.txt 2>> 456.txt 正确放进123.txt 错误放进456.txt 例2:echo '1122233' &>> 123.txt 不管正确、错误的都输入到123.txt