linux系统

Linux安装Gradle

六眼飞鱼酱① 提交于 2020-04-05 23:35:42
Linux安装Gradle Gradle 是以 Groovy 语言为基础,面向Java应用为主。基于DSL(领域特定语言)语法的自动化构建工具。在github上,gradle项目很多,有的是gradel跟maven构建一块儿使用,可以看出,gradle有一种逐渐替代maven的架势。 下面就描述一下如何在linux(centos)服务器环境下安装配置gradle环境。 1.在http://www.gradle.org/downloads页面,下载最新版的gradle软件包,撰写这篇文档的时候是2.6版。 2.下载了gradle-2.6-all.zip或者gradle-2.6-bin.zip文件之后,将之解压在/usr/local目录下 $cd /data/ $sudo unzip gradle-2.6-all.zip . $mv gradle-2.6-all /usr/local/gradle 3.然后设置运行环境 $sudo vi /etc/profile 在文件中增加GRADLE_HOME输出路径,并且修订PATH设置如下 export GRADLE_HOME=/usr/local/gradle export PATH=$GRADLE_HOME/bin:$PATH 如果你不希望所有用户都使用这个配置,那么可以单独为自己的账号配置gradle环境, 在自己账号的HOME目录下

Linux系统中常用操作命令

∥☆過路亽.° 提交于 2020-04-05 23:28:28
常用指令 ls   显示文件或目录 -l 列出文件详细信息l(list) -a 列出当前目录下所有文件及目录,包括隐藏的a(all) mkdir 创建目录 -p 创建目录,若无父目录,则创建p(parent) cd 切换目录 touch 创建空文件 echo 创建带有内容的文件。 cat 查看文件内容 cp 拷贝 mv 移动或重命名 rm 删除文件 -r 递归删除,可删除子目录及文件 -f 强制删除 find 在文件系统中搜索某文件 wc 统计文本中行数、字数、字符数 grep 在文本文件中查找某个字符串 rmdir 删除空目录 tree 树形结构显示目录,需要安装tree包 pwd 显示当前目录 ln 创建链接文件 more、less 分页显示文本文件内容 head、tail 显示文件头、尾内容 ctrl+alt+F1 命令行全屏模式 系统管理命令 stat 显示指定文件的详细信息,比ls更详细 who 显示在线登陆用户 whoami 显示当前操作用户 hostname 显示主机名 uname 显示系统简要信息 -a 显示系统完整信息 top 动态显示当前耗费资源最多进程信息 ps 显示瞬间进程状态 ps aux -ef 显示系统常驻进程 du 查看目录大小 du -h /home带有单位显示目录信息 df 查看磁盘大小 df -h 带有单位显示磁盘信息 ifconfig

2018-3-29 Linux学习笔记

柔情痞子 提交于 2020-04-05 23:27:27
16.1 Tomcat介绍 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。 java程序写的网站 用tomcat+jdk来运行 。 tomcat 是一个中间件 ,真正起作用的, 解析java脚本(JSP)的是jdk 。 jdk(java development kit)是整个java的核心,它包含了java运行环境和一堆java相关的工具以及java基础库。 最主流的jdk为sun公司发布的jdk,除此之外,其实IBM公司也有发布JDK,CentOS上也可以用yum安装openjdk(开源)。 16.2 安装jdk jdk版本有1.6,1.7,1.8等,以下我们以安装1.8版本来学习. 首先需要到官网手动下载jdk8(此处无法wget). 官网下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 下载jdk8后,将其传送到虚拟机的/usr/local/src/目录下. 解压缩jdk安装包: tar zxvf jdk-8u161-linux-x64.tar.gz 移动并重命名jdk安装包: mv jdk1.8.0_161

高级必问:Linux 中的零拷贝技术是什么?

南笙酒味 提交于 2020-04-05 22:57:05
作者:卡巴拉的树 https://www.jianshu.com/p/fad3339e3448 正文 本文探讨Linux中 主要的几种零拷贝技术 以及零拷贝技术 适用的场景 。为了迅速建立起零拷贝的概念,我们拿一个常用的场景进行引入: 01 引文 在写一个服务端程序时(Web Server或者文件服务器),文件下载是一个基本功能。这时候服务端的任务是:将服务端主机磁盘中的文件不做修改地从已连接的socket发出去,我们通常用下面的代码完成: while((n = read(diskfd, buf, BUF_SIZE)) > 0) write(sockfd, buf , n); 基本操作就是循环的从磁盘读入文件内容到缓冲区,再将缓冲区的内容发送到socket。但是由于Linux的I/O操作默认是缓冲I/O。这里面主要使用的也就是read和write两个系统调用,我们并不知道操作系统在其中做了什么。实际上在以上I/O操作中,发生了多次的数据拷贝。 当应用程序访问某块数据时,操作系统首先会检查,是不是最近访问过此文件,文件内容是否缓存在内核缓冲区,如果是,操作系统则直接根据read系统调用提供的buf地址,将内核缓冲区的内容拷贝到buf所指定的用户空间缓冲区中去。如果不是,操作系统则首先将磁盘上的数据拷贝的内核缓冲区,这一步目前主要依靠DMA来传输

Linux下的C语言基础-4

流过昼夜 提交于 2020-04-05 21:05:17
实现一个字符串拷贝 main.c文件 1 #include <stdio.h> 2 #include "str_cpy.h" 3 4 int main(int argc, const char *argv[]) 5 { 6 char c[128] = {0}; 7 char c1[128]; 8 char *s=c1; 9 scanf("%[^\n]",s); 10 char *p = str_cpy(c,s); 11 12 printf("c[128]从终端考贝的数据是:%s\n",c); 13 14 return 0; 15 } View Code str_cpy.c文件 1 #include "str_cpy.h" 2 3 char *str_cpy(char *s,char *c) 4 { 5 6 char *p = s; 7 char *q; 8 int i=0; 9 for(q=c;*q!='\0';q++) 10 { 11 *p=*q; 12 p++; 13 14 } 15 16 return s; 17 } View Code str_cpy.h 1 #ifndef __STR_CPY_H 2 #define __STR_CPY_H 3 4 #include <stdio.h> 5 6 char *str_cpy(char *s,char *c); 7 8

Linux上搭建MySQL远程服务

和自甴很熟 提交于 2020-04-05 20:52:10
1. 安装MySQL 对于Ubuntu,直接使用apt-get安装,如果是CentOS,则同理使用yum apt-get install -y mysql-server 2. 修改密码 输入mysql命令,直接进入MySQL客户端控制台 root@localhost:~# mysql 更新密码 mysql> update mysql.user set password=password('yourpassword') where user='root'; mysql> flush privileges; 注意如果MySQL的版本是5.7.x以上的话,mysql.user表里面的password字段已经改名为authentication_string,所以update语句要改成: mysql> update mysql.user set authentication_string=password('yourpassword') where user='root'; mysql> flush privileges; 这里yourpassword是想要设置的修改后的密码 3. 设置允许远程连接 3.1 修改配置文件 修改配置文件/etc/mysql/mysql.conf.d,允许远程访问 vim /etc/mysql/mysql.conf.d 将bind-address注视掉

Linux安装MySQL并修改用户信息

|▌冷眼眸甩不掉的悲伤 提交于 2020-04-05 20:22:29
os:Ubuntu18.10 1.使用apt-get安装MySQL,默认安装5.7 sudo apt-get install mysql-server 2.使用默认账号登录MySQL sudo vi /etc/mysql/debian.cnf # Automatically generated for Debian scripts. DO NOT TOUCH! [client] host = localhost user = debian-sys-maint password = ei5QoLgDYm8IAN6f socket = /var/run/mysqld/mysqld.sock [mysql_upgrade] host = localhost user = debian-sys-maint password = ei5QoLgDYm8IAN6f socket = /var/run/mysqld/mysqld.sock 3.修改用户信息 use mysql; update user set authentication_string=password('new password') where user='new username'; update user set plugin='mysql_native_password'; flush privileges; quit;

linux系统 python升级创建虚拟环境

帅比萌擦擦* 提交于 2020-04-05 19:55:24
Python3.3以上的版本通过venv模块原生支持虚拟环境,可以代替之前的virtualenv。 该venv模块提供了创建轻量级“虚拟环境”,提供与系统Python的隔离支持。每一个虚拟环境都有其自己的Python二进制(允许有不同的Python版本创作环境), 并且可以拥有自己独立的一套Python包。 python3.4以上包含pip命令 环境:Linux centos 7.3 python2.7.5 源码安装python3.6.6 放在目录 /usr/local/python3.6.6下面 目前是两个python共存 下面开始创建虚拟环境 [root@centos7 ~]# mkdir test //新建一个目录 [root@centos7 ~]# cd test [root@centos7 test]# python //目前的python版本 python python2 python2.7 python3.6 [root@centos7 test]# /usr/local/python3.6.6/bin/python3 -m venv . //创建虚拟环境 [root@centos7 test]# find /usr/local/python3.6.6/ -name activate //这个省略 /usr/local/python3.6.6/Python-3.6.6

Linux下安装配置共享工具nfs

两盒软妹~` 提交于 2020-04-05 19:55:19
准备工作 配置好yum源,最好也把epel源配置上 准备两台服务器(247 server,241 client) 开始安装 启动并设置开机启动 配置共享目录 客户端挂载 写入到fstab 总结,nfs参数说明 rw 该主机对该共享目录有读写权限 sync 资料同步写入到内存与硬盘中,防止数据丢失 no_root_squash 客户机用root访问该共享文件夹时,不映射root用户 no_all_squash 保留共享文件的UID和GID references nfs参数参考文档 nfs参数参考文档 nfs server配置参考文档 来源: oschina 链接: https://my.oschina.net/wangzongtao/blog/3213717

A funny story in regard to a linux newbie

我怕爱的太早我们不能终老 提交于 2020-04-05 19:52:04
ZZ from here : ask what kernel ring buffer is A few days ago I started thinking that my linux education has halted. I didn't seem to be learning anything new, even though I fealt like a total linux newbie. Then I reminded myself "Everything in linux is a file", so I said to myself: "I'll just go through every directory on my slack system and figure out what every single file is for and does.". So today I started to get to work. First alphabeticaly is /bin, so I hopped in and started going through the commands one by one reading man pages and stuff. Then I got to /bin/dmesg. I ran it and got