root

Linux学习笔记一

大城市里の小女人 提交于 2020-01-24 01:04:25
默认情况下,所有系统帐号与一般身份用户,以及root的相关信息,都记录在/etc/passwd文件内;密码记录在/etc/shadow文件中;Linux所有的用户组名称都记录在/etc/group内。不可随意删除这3个文件。 了解Linux文件属性,以root身份登录后 输入 ls -al 查看具体属性设置。 文件前面第一个字符为 . 表示隐藏文件。 各字段依次的含义:文件属性,连接数,文件拥有者,文件所属用户组,文件大小,文件最先修改时间,文件名 文件属性10字段: Linux文件类型: - 普通文件。根据文件内容分:纯文本文件(ASCLL),二进制文件(binary),数据格式文件(data)----last命令 d 目录, l 连接文件link file ,b 设备文件中可供存储的接口设备, c 设备文件中串行端口设备如键盘鼠标 拥有者权限,同用户组权限,其他非本用户组权限 r read读,w write写,x excute可执行 9个属性,3个一组,其中可用数字来表示各个属性:r--4,w--2,x--1,将同一组的3个属性相加:owner=rwx=4+2+1 Windows中,一个文件是否具有执行能力是通过“扩展名”来决定,但在Linux中是通过是否具有x属性来决定的。 Linux文件扩展名: .sh:批处理文件(script,脚本),shell写成 .pl

Linux下C连接MySql数据库

百般思念 提交于 2020-01-24 00:25:09
目录: 一、解决小的问题; 二、大问题,如果你不小心把/usr/lib的所属用户改了导致sudo命令用不了: 三、C连接MySql编程本身: 其实写这个程序真的很简单,十多分钟的事情,只是以前没在Linux下用纯C连过Mysql,想试一下,竟然搞了一整天,而且不是由于编码本身,是因为其他的一些周边问题,所以很有必要做一下笔记。 一、解决小的问题: 1、怎么自己去学着编写? C语言针对MySql函数的帮助怎么查找:这些东西在MySql提供的帮助文档里都是有的,索引是 C API 。可以自己去下载chm格式的帮助文档,个人觉得这种文档比较好用,也可以去官网自行决定下载其他类型的帮助文档: http://dev.mysql.com/doc/ ,或者在线查找: https://dev.mysql.com/doc/refman/5.1/zh/apis.html 。用高级语言编程其实就是学会使用帮助文档并付诸实践的过程。 2、在编写之前请确定自己有相关的头文件和库文件 关于这点,需要做点准备工作: 1、安装mysql: sudo apt-get install mysql-server 2、安装库文件和头文件: sudo apt-get install libmysqlclient-dev 也可以自己去官网下载对应mysql的安装包进行安装:http://dev.mysql.com

并查集C语言

北战南征 提交于 2020-01-23 22:22:26
并查集 什么是并查集 并查集是用来处理“有N个元素的集合应用问题中,我们通常是在开始时让每个元素构成一个单元素的集合,然后按一定顺序将属于同一组的元素所在的集合合并,其间要反复查找一个元素在哪个集合中”的问题的。通常我们使用的数据结构空间复杂度还可以但时间复杂度远远超出我们所需求的。而并查集这种树状数据结构正好可以处理这种一些不相交集合的合并及查询问题,大大减少了我们的时间复杂度。 简单的来说就是一个把自己的根列出来,然后再查找自己的根的在哪的问题。 怎么实现并查集 首先并查集有三各要素需要明确:根,树枝,查找路径。悬空说很难落实下面我们引入例题: 这是一道很明显的并查集的题目,我们先将每个人认识的头目(根)列到root数组中去,然后我们通过判断他们的根是否一致来实现计算其数量也就是我们说的查找路径 下面是代码实现: int search ( int men ) { int now ; now = men ; while ( root [ men ] != men ) { men = root [ men ] ; } //查找根 if ( now != men ) { root [ now ] = root [ men ] ; } //压缩路径 return men ; } 我们通过压缩路径来减少下次判断的时间,然后我们只要再对根的一致进行判断就行了。下面是总代码的实现: #

编译安装hadoop2.6.3

守給你的承諾、 提交于 2020-01-23 18:30:40
一、安装环境 1.1 JAVA 安装java1.7 下载jdk1.7: [ root@node1 ~]# wget http : //download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz?AuthParam=1452765180_64b65bb908cae46ab9a9e492c842d7c7 设置JAVA环境变量: PATH=$PATH:$HOME/bin:/usr/local/mongodb-linux-x86_64-3.2.0/bin JAVA_HOME=/usr/local/jdk1.7.0_79 CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASS PATH=$JAVA_HOME/bin:$PATH 1.2 Maven 下载安装maven: [root@node1~]# wget http://mirrors.cnnic.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz 然后解压,到/usr/local/,配置path PATH=$JAVA_HOME/bin:/usr/local/apache

Linux下安装jdk

一个人想着一个人 提交于 2020-01-23 18:25:30
0.下载jdk8 登录网址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 选择对应jdk版本下载。(可在Windows下下载完成后,通过文件夹共享到Linux上) 1. 登录Linux,切换到root用户 su root 获取root用户权限,当前工作目录不变(需要root密码) 或 sudo -i 不需要root密码直接切换成root(需要当前用户密码) 2. 在usr目录下建立java安装目录 cd /usr mkdir java 3.将jdk-8u60-linux-x64.tar.gz拷贝到java目录下 cp /mnt/hgfs/linux/jdk-8u60-linux-x64.tar.gz /usr/java/ 4.解压jdk到当前目录 tar -zxvf jdk-8u60-linux-x64.tar.gz 得到文件夹 jdk1.8.0_60 5.安装完毕为他建立一个链接以节省目录长度 ln -s /usr/java/jdk1.8.0_60/ /usr/jdk 6.编辑配置文件,配置环境变量 vim /etc/profile 添加如下内容:JAVA_HOME根据实际目录来 JAVA_HOME=/usr/java/jdk1.8.0_60

并查集

让人想犯罪 __ 提交于 2020-01-23 16:52:37
一, 并查集是一种树型的数据结构,用于处理一些不交集的合并及查询问题,常常在使用中以森林来表示。 二,主要操作 1.初始化 把每个点所在集合初始化为其自身。 通常来说,这个步骤在每次使用该数据结构时只需要执行一次,无论何种实现方式,时间复杂度均为O(N)。 2.查找 查找元素所在的集合,即根节点。 3.合并 将两个元素所在的集合合并为一个集合。 通常来说,合并之前,应先判断两个元素是否属于同一集合,这可用上面的“查找”操作实现。 3.例题:朋友圈 有n个人,编号1-n。 现在有一个舞会,在舞会上,大家会相互介绍自己的朋友。 即: 如果a认识b,b认识c。那么在舞会上,a就会通过b认识到c。 现在,给出m个关系 每个关系描述: a b 表示 编号为a和编号为b的人是朋友关系。 最后问,会有多少个朋友圈。 代码实现 # include <stdio.h> int unionsearch ( int root ) ; int db [ 5000000 ] //每个朋友圈的代表,如db[2]=3指编号为2的人朋友圈的代表是编号为3的人 int main ( ) { int n , m , pyq , i , start , end , root1 , root2 , sum = 0 ; while ( scanf ( "%d" , & n ) != EOF ) { scanf ( "%d"

Dataset数据的XML持久化处理

落花浮王杯 提交于 2020-01-23 16:24:59
主要方法是用ADO.NET的DataTale 填充到Dataset Dataset 内置了XML持久化的方法,WriteXML和ReadXML:简单的WinFrom实例:从数据库的表 private void button1_Click(object sender, EventArgs e) { string path = AppDomain.CurrentDomain.BaseDirectory+"Users.xml";//BIN/DEBUGA string sql = "SELECT * FROM Users"; DataTable td = DBHelper.Query(sql, null); DataSet ds = new DataSet();//查询填充DATABLE到DTAASET ds.Tables.Add(td); ds.WriteXml(path);//保存到本地 XmlDocument xmld = new XmlDocument(); xmld.Load(path); XmlNode root = xmld.DocumentElement; label1.Text = ""; for (int i = 0; i < root.ChildNodes.Count; i++) { label1.Text = root.ChildNodes[i].InnerText

ZooKeeper简介与集群部署

本秂侑毒 提交于 2020-01-23 12:03:55
ZooKeeper 是一个开源的分布式协调服务,由雅虎公司创建,是Google Chubby的开源实现,ZooKeeper的设计目标是将那些复杂且容易出错的分布式一致性服务封装起来,构成一个高效可靠的原语集。 ZooKeeper 是什么 ZooKeeper是一个典型的分布式数据一致性的解决方案,分布式应用程序可以基于它实现诸如数据发布、数据订阅、负载均衡、命名服务、分布式协调、分布式通知、集群管理、master选举、分布式锁和分布式队列等功能。ZooKeeper可以保证如下分布式一致性特性。 (1)顺序一致性 从同一个客户端发起的请求,最终将会严格地按照其发起顺序被应ZooKeeper中去。 (2)原子性 所有事务请求的处理结果是在整个集群中所有机器上应用情况是一致的,也就是说,要么整个集群所有机器都成功应用了某一个事务,要么都没有应用,一定不会出现集群中部分机器应用了该事务,而另外一部分没有应用的情况。 (3)单一试图 无论客户端连接的是那个ZooKeeper服务器,其看到的服务端数据模型都是一致的。 (4)可靠性 一旦服务端成功地应用了一个事务,并完成对客户端的响应,那么该事务所引起的服务端状态变更将会被一直保留下来,除非有另一个事务又对其进行了变更。 (5)实时性 通常人们看到实时性的第一反应是,一旦一个事务被成功应用

mysql常用命令介绍

对着背影说爱祢 提交于 2020-01-23 05:13:50
1、MySQL常用命令 create database name; 创建数据库 use databasename; 选择数据库 drop database name 直接删除数据库,不提醒 show tables; 显示表 describe tablename; 表的详细描述 select 中加上distinct去除重复字段 mysqladmin drop databasename 删除数据库前,有提示。 显示当前mysql版本和当前日期 select version(),current_date; 2、修改mysql中root的密码: shell>mysql -u root -p mysql> update user set password=password(123456) where user=’root’; mysql> flush privileges //刷新数据库 mysql>use dbname; 打开数据库: mysql>show databases; 显示所有数据库 mysql>show tables; 显示数据库mysql中所有的表:先use mysql;然后 mysql>describe user; 显示表mysql数据库中user表的列信息); 3、grant 创建一个可以从任何地方连接服务器的一个完全的超级用户

HDU - 4419 Colourful Rectangle【扫描线.笔记】

↘锁芯ラ 提交于 2020-01-23 02:36:09
题目链接: http://acm.hdu.edu.cn/viewcode.php?rid=32159923 题目大意:有n个矩形块,这些矩形块有R, G, B三种不同的颜色,最终区域的颜色由该区域上颜色的种类决定,要求输出 R, G, B, RG, RB, GB, RGB七种颜色的面积是多少。 思路:在前面区域覆盖面积的例题里,我们用一维数组维护被覆盖的区间长度,因为这里有颜色之分,所以可以再开一维表示颜色。此外,区域的颜色是由不同颜色的种类决定的,所以颜色的判断就可以很好地利用到或运算。 (扫描线中为什么不用push_down)扫描线的例题中利用了线段树这种数据结构,但是我们每次查询的都是整体,没有去询问某个子区间,所以不用push_down。 AC1: //cover[root][i]表示区间被第i种颜色覆盖的次数 # include <iostream> # include <cstdio> # include <cmath> # include <string> # include <cstring> # include <algorithm> # include <limits> # include <vector> # include <stack> # include <queue> # include <set> # include <map> # define