root

102. 二叉树的层次遍历

时光总嘲笑我的痴心妄想 提交于 2020-01-18 04:01:05
非递归算法: 用队列,关键是对入队的结点进行划分,计算当前层次的结点总数; 一,下一层的结点总数的计算: 法一: 从上一层第一个结点开始出队到上一层最后一个结点出对完成时,下一层所有结点刚好完成了入队操作;在此段时间内不断更新计数器可计算出下一层的节点总数;此时用下一层结点总数更新当前结点总数值; 法二: 外层每一次循环(while(){})都是一层,所以直接在外层调用 queue.size()即为当前层次结点的总数; 二,List<List>类型(以线性表为元素的线性表)的集合的操作; 声明:List<List> list = new ArrayList<List< Integer >>(); 添加外层表的元素:list.add(new ArrayList()); 添加表的表的元素(整型值)list.get(level).add(tmp.val); 三,队列的使用 声明:Queue queue = new LinkedList(); 入队:queue.add(root); 出队:tmp = queue.remove(); 判断队空:queue.isEmpty() /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode

使用正则表达式

前提是你 提交于 2020-01-18 03:19:34
4案例4:使用正则表达式 4.1问题 本案例要求熟悉正则表达式的编写,完成以下任务: 利用egrep工具练习正则表达式的基本用法 4.2方案 4.3步骤 实现此案例需要按照如下步骤进行 步骤一:正则表达式匹配练习 1)典型的应用场合:grep、egrep检索文本行 grep命令不带-E选项时,支持基本正则匹配模式。比如"word"关键词检索、"^word"匹配以Word开头的行、"word$"匹配以word结尾的行......等等。 输出以"r"开头的用户记录: [root@svr5 ~]# grep '^r' /etc/passwd root:x:0:0:root:/root:/bin/bash rpc:x:32:32:Portmapper RPC user:/:/sbin/nologin rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin 输出以"localhost"结尾的行: [root@svr5 ~]# grep 'localhost$' /etc/hosts 127.0.0.1 localhost.localdomain localhost 若希望在grep检索式同时组合多个条件,比如输出以"root"或者以"daemon"开头的行: [root@svr5 ~]# grep '^root|^daemon'

3_SQL注入攻击_1

眉间皱痕 提交于 2020-01-17 22:05:47
0x00 sql注入   在owasp的年度top10安全问题中,注入高居榜首。SQL注入攻击是指通过构建特殊的输入作为参数传入web应用程序,而这些输入大多都是SQL语法中的一些组合,通过执行SQL语句而执行攻击者所要的操作,其主要原因是程序没有细致的过滤用户输入的数据,致使非法数据侵入系统。 1.对web应用而言,用户的核心数据存储在数据库中,例如MySQL,SQL sever,oracle; 2.通过SQL注入攻击,可以获取,修改,删除数据库信息,并且通过提权来控制web服务器等其他操作; 3.SQL注入即攻击者通过构造特殊的SQL语句,入侵目标系统,致使后台数据库泄露数据的过程; 4.因为SQL注入漏洞造成的严重危害性所以,常年稳居owasp top10的榜首。 0x01 SQL注入的危害  1.脱库导致用户数据泄露;  2.危害web等应用的安全;  3.失去操作系统的控制权;  4.用户信息被非法买卖;  5.危害企业及国家的安全; 0x02 SQL基础知识回顾   环境:OWASP   表1:dvwa.user   表2:wordpress.wp_users   表3: mysql.user 登录 mysql -uroot -p root@owaspbwa:~# mysql -uroot -p Enter password: Welcome to the MySQL

Warning:detected \"cgroupfs\" as the Docker cgroup driver. The recommended driver is \"systemd\".

与世无争的帅哥 提交于 2020-01-17 21:43:07
Warning:detected "cgroupfs" as the Docker cgroup driver. The recommended driver is "systemd". https://www.cnblogs.com/ExMan/p/11613812.html 执行kubeadm init集群初始化时遇到: [WARNING IsDockerSystemdCheck]: detected "cgroupfs" as the Docker cgroup driver. The recommended driver is "systemd". [警告IsDockerSystemdCheck]:检测到“cgroupfs”作为Docker cgroup驱动程序。 推荐的驱动程序是“systemd”。 所以我们更换一下驱动。 解决方法:修改docker 由于Ubuntu默认没有设置root,所以设置一下root用户 sudo passwd root 输入密码后,切换root用户:su root 在/etc/docker下创建daemon.json并编辑: mkdir /etc/docker/daemon.json 加入以下内容: { "exec-opts":["native.cgroupdriver=systemd"] } 重启docker systemctl

HBase集群搭建实验(1)_单机模式安装(使用内置ZooKeeper)

吃可爱长大的小学妹 提交于 2020-01-17 21:33:25
HBase单机模式: 1)Hbase不使用HDFS存储数据,仅使用本地Linux文件系统来存储数据 2) 不同的HBase或ZooKeeper守护进程都运行在同一个 JVM (Java Virtual Machine)中 3)HBase单机模式安装是 完全不依赖于Hadoop的,仅 用于在硬件配置(内存)很低的计算机上进行 最简单的 HBase 安装和使用体验 实验前提: 无任何实验前提 ,HBase伪分布式部署完全不依赖于Hadoop,在一台普通的Linux主机上即可进行HBase单机模式安装 实验目标: 在单台Linux虚拟机主机上部署单机模式的HBase ,用于教学演示 集群规划: 无需任何集群规划 实验步骤: 1)启动单台运行Linux的主机,主机名是hadoop,IP地址可自定义,例如192.168.56.20 2)在win7用XSHELL远程登录Linux,注意VirtualBox主机网络管理器的虚拟网卡IP(192.168.56.1)地址和虚拟机Linux处于一个网段 3)上传HBase安装包到Linux的/root目录,解压缩hbase-1.2.0-cdh5.7.0.tar.gz安装包到指定目录/usr/local tar -zxvf /root/hbase-1.2.0-cdh5.7.0.tar.gz -C /usr/local/ 解压缩到/usr/local目录

linux安装mysql5.7

你离开我真会死。 提交于 2020-01-17 17:10:54
环境:CentOS7 64位操作系统 1. 下载mysql源安装包    wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm 2. 安装mysql源    yum localinstall mysql57-community-release-el7-8.noarch.rpm 3.检查MySQL源是否安装成功    yum repolist enabled | grep "mysql.*-community.*"      看到上图所示表示安装成功   可以修改 vim /etc/yum.repos.d/mysql-community.repo 源,改变默认安装的mysql版本。   比如要安装5.6版本,将5.7源的enabled=1改成enabled=0。   然后再将5.6源的enabled=0改成enabled=1即可。   改完之后的效果如下所示:    4.安装MySQL    yum install mysql-community-server 5.启动MySQL服务    systemctl start mysqld 6.查看MySQL的启动状态    7.设置开机启动    systemctl enable mysqld   systemctl daemon-reload

Canal简介

落花浮王杯 提交于 2020-01-17 13:51:37
以下内容主要摘自Canal 官方wiki和网友博客:https://www.jianshu.com/p/6299048fad66 一、背景 早期,阿里巴巴B2B公司因为存在杭州和美国双机房部署,存在跨机房同步的业务需求。不过早期的数据库同步业务,主要是基于trigger的方式获取增量变更,不过从2010年开始,阿里系公司开始逐步的尝试基于数据库的日志解析,获取增量变更进行同步,由此衍生出了增量订阅&消费的业务,从此开启了一段新纪元。 ps. 目前内部版本已经支持mysql和oracle部分版本的日志解析,当前的canal开源版本支持5.7及以下的版本(阿里内部mysql 5.7.13, 5.6.10, mysql 5.5.18和5.1.40/48) 基于日志增量订阅&消费支持的业务: 数据库镜像 数据库实时备份 多级索引 (卖家和买家各自分库索引) search build 业务cache刷新 价格变化等重要业务消息 二、项目介绍 名称:canal [kə'næl] 译意: 水道/管道/沟渠 语言: 纯java开发 定位: 基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了mysql 三、工作原理 1、mysql主备复制实现 从上层来看,复制分成三步: master将改变记录到二进制日志(binary log)中(这些记录叫做二进制日志事件,binary log

Centos7远程桌面 vnc-server设置

a 夏天 提交于 2020-01-17 12:57:57
Centos7远程桌面 vnc-server设置 1, 要以界面化方式访问服务器,首先要确认目标服务器安装了图形化环境,Linux系统下常见的桌面环境有GNOME和KDE,这里安装GNOME桌面,执行命令如下: yum -y groupinstall "GNOME Desktop" 2, 安装 vncserver 服务 yum install -y tigervnc-server tigervnc cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service #替换文件中的两行,其实就是将<user>换成root vi /etc/systemd/system/vncserver@:1.service ExecStart=/usr/sbin/runuser -l <USER> -c "/usr/bin/vncserver %i" PIDFile=/home/<USER>/.vnc/%H%i.pid 改为下面的: ExecStart=/sbin/runuser -l root -c "/usr/bin/vncserver %i" PIDFile=/root/.vnc/%H%i.pid 1) 关闭防火墙 centos的防火墙是firewalld,关闭防火墙的命令 [root

Access protected UNIX domain sockets from Android app (using root)

冷暖自知 提交于 2020-01-17 07:55:28
问题 I need to access a UNIX domain socket from my Android app. Its file is located in /dev , so I need root permissions to open it. My phone is rooted, so gaining this permissions is not a problem. However, I failed to find a way to access this socket from root and forward the communication to my app. AFAIK, the only way Android apps can get root permissions is through the su tool, so I need to find a native tool (already installed in the phone) that can make a bridge between STDIN/STDOUT and

Linux账号管理精讲

一世执手 提交于 2020-01-17 04:08:16
一、管理用户账号 1、用户账号概述 Linux基于用户身份对资源访问进行控制。 2、用户账号管理 1)用户账号 超级用户(root); 普通用户; 程序用户; UID(User IDentify)用户标识号; ①用户账号文件/etc/passwd /etc/passwd文件用于保存用户名称、宿主目录、登录Shell等基本信息;每一行对应一个用户的账号记录。如下图: ②用户账号文件/etc/shadow /etc/shadow文件用于保存用户的密码、账号有效期等信息,每一行对应一个用户的密码记录。如下图: 3、添加用户账号 添加用户账号的命令及常用选项格式如下: 应用举例: <!--创建bob用户,管理组为root,附加组为root,指定宿主目录为/bob--> [root@centos01 ~]# useradd -d /bob -g root -G root bob [root@centos01 ~]# tail -2 /etc/passwd dhcpd:x:177:177:DHCP server:/:/sbin/nologin bob:x:1001:0::/bob:/bin/bash <!--创建tom用户,不需要创建宿主目录,账户不能登录系统--> [root@centos01 ~]# useradd -M -s /sbin/nologin tom [root