linux系统

linux之磁盘配额(quota)

北城余情 提交于 2020-03-16 04:31:26
1.什么是quota   简单的说就是限制用户对磁盘空间的使用量。   因为Linux是多用户多任务的操作系统,许多人共用磁盘空间,为了合理的分配磁盘空间,于是就有了quota的出现。 2.quota的用途 显示磁盘使用情况和配额 3.quota的一般作用对象 (1)针对WWW server (2)针对mail server (3)针对file server 4.quota的限制 (1)仅能针对整个文件系统 (2)需要kernel的支持 (3)只对一般用户有效 5.quota的使用   测试环境     RHEL6.6(默认kernel已经支持quota功能)     /dev/sdb1  供测试的文件系统     用户组   myquota     用户   quota1,quota2   具体操作如下     (1)重新挂/dev/sdb1文件系统,并添加usrquota,grpquota参数     [root@localhost ~]# mount -o remount,usrquota,grpquota /dev/sdb1     重新挂载后,/dev/sdb1这个分区就支持quota功能了     [root@localhost ~]# mount | grep /dev/sdb1     /dev/sdb1 on /mnt/test type ext4 (rw,

Linux磁盘配额管理

自作多情 提交于 2020-03-16 04:30:18
  磁盘配额可以限制指定账户能够使用的磁盘空间,这样可以避免因某个用户的过度使用磁盘空间造成其他用户无法正常工作甚至影响系统运行。在服务器管理中此功能非常重要,但对单击用户来说意义不大。   目前在Windows系列中,只有win2000及以后版本并且使用NTFS文件系统才能实现这一功能。   磁盘配额是针对分区也就是所谓的文件系统来实现的。它不能够针对一个目录实现磁盘配额(Windows 2008可针对文件夹进行磁盘配额)。    Linux(RHEL5.4)下设置磁盘配额的方法:    1、准备工作:创建用户user1、user2,对其进行磁盘配额。          2、创建一个逻辑分区,进行磁盘配额       3、编辑/etc/fstab文件在要进行磁盘配额的分区上,添加磁盘配额挂载选项         编辑fstab文件要重启才能生效。但是,也可以使用mount -a指令,只要用mount -a能挂上,重启就一定能挂上。    4、进行配额   由于是要针对一个分区来实现配额的,在这个分区上必须有一个包含了所有用户或组的限制文件。产生这个文件的方法如下:      quotacheck参数说明:-a 表示扫描fstab表格中支持配额的分区,-u 计算每一个用户在该分区上所占用的空间,-g 计算每一个组在该分区上所占用的空间,-v 表示详细信息

linux使用

*爱你&永不变心* 提交于 2020-03-16 02:42:47
1.文件命令 1.1创建文件 touch 文件名称 例如:touch abc //表示在当前目录下创建abc文件 1.2打开文件 vim 文件名 或者 vi 文件名 1.3查询文件 ls -l 1.4.查找文件的位置 在终端输入:locate 文件名 比如hadoop文件 1.5下载文件到指定目录 wget -P 指定目录 下载地址 如果下载到当前目录下 不用 -P 参数 例如:下载地址:https: // repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/sbt-launch/0.13.11/sbt-launch.jar 下载到/usr/local/sbt目录中 wget -P /usr/local/sbt https://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/sbt-launch/0.13.11/sbt-launch.jar 2.文件 夹 命令 2.1创建文件夹 mkdir 文件夹名称 例如:mkdir abc //表示在当前目录下创建abc文件夹 2.2删除文件夹 sudo rm -rf 文件夹名称 删除前当前目录含test.scala文件夹: 执行rm -rf test.scala命令 删除后当前目录不含test.scala文件夹: 3.目录命令

C++调用java

落花浮王杯 提交于 2020-03-15 23:47:58
摘要: 1 java类生成c头文件和库文件 2 对于c/c++程序,启动时先启动jvm,然后获得对应的java类的对象和方法。然后正常使用。 最近正在做一个C/C++调用java的程序,这里说的调用java不是使用方式 exec(/path/to/java,.....),而是调用一个class文件中的一个特定的函数。 实践后总结如下: 1. 安装 jdk 2. 安装gcc(linux自带有的就无需安装了) 利用JNI(java native interface),来实现动态建立java runtime environment. 第一,C/C++程序中包含头文件"jni.h" #include <jni.h> 一般在JAVA_HOME/include 目录下。 调用jni.h中的方法建立runtime env 然后调用java 程序。 第二,编译 g++ -o testjava testjava.cpp -I${JAVA_HOME}/include -I${JAVA_HOME}/include/linux -L${JRE_HOME}/lib/i386/client -ljvm 以上就是大致思路,现详细说明过程如下: #####################################################################################

Linux whatis与whatis database使用及查询方法

时光毁灭记忆、已成空白 提交于 2020-03-15 21:58:29
在学习man命令时候,估计很多朋友都发现有man –f ,man –k 参数,可以查出很多数据。这些有的与man手册页相同,有些不是属于手册页的。它们数据怎么收集来的,并且whatis是怎么样工作的。 通过man查找帮助过程: 1 2 3 4 5 6 7 8 9 10 11 [chengmo@centos5 ~]$ man -h ... f:same as whatis(1) ... #觉得比较奇怪,whatis是什么呢? [chengmo@centos5 ~]$ man whatis #查询得到是: #whatis - search the whatis database for complete words. #它是查询whatis数据库的工具 #The whatis database is created using the command /usr/sbin/makewhatis. #里面还说,whatis数据库 是通过/usr/bin/makewhatis建立的 收获:whatis数据库,并且有makewhatis创建,whatis脚本是用作查询的 makewhatis是怎么样工作的呢? [chengmo@centos5 ~]$ man makewhatis #得到: makewhatis reads all the manual pages contained in

常用Linux命令

*爱你&永不变心* 提交于 2020-03-15 20:39:52
常用Linux命令 1. 文件管理 1.1. 列出文件 1.2. 打印当前工作目录 1.3. 建立目录 1.4. 切换工作目录 1.5. 删除文件或目录 1.6. 移动文件或目录 1.7. 复制文件或目录 1.8. 统计文件或目录大小 2. 文件操作 2.1. 查看文件 2.2. 连接文件 2.3. 反向连接文件 2.4. 按列提取文件内容 2.5. 比较文件差异 2.6. 打包文件 2.7. 压缩文件 2.8. 统计文件行数 2.9. 打印文件并增加行号 2.10. 更新文件时间戳 3. 日期和时间 3.1. 打印日期 3.2. 打印日历 4. 搜索 4.1. 搜索程序 4.2. 搜索程序名 4.3. 搜索文件 4.4. 正则表达式搜索 5. 进程管理 5.1. 查看进程 5.2. 向进程发送信号 5.3. 列出信号 5.4. 查看进程打开的文件 5.5. 实时查看系统进程 6. 网络 6.1. 检查网络联通性 6.2. 查看本地套接字 6.3. 查看网卡配置 6.4. 查看主机名 6.5. 跟踪IP路由 6.6. 查看本地路由表 6.7. 下载文件 6.8. 抓取网络包 7. 辅助函数 7.1. 打印字符串 8. Bash 8.1. 变量 8.2. 分支条件 8.3. 数值计算 8.4. 执行命令 8.5. 数组 8.6. 函数 8.7. 字符串 8.8. 循环 8.9.

【原创】Linux基础之测试域名IP端口连通性

烈酒焚心 提交于 2020-03-15 19:06:35
一 测试域名是否可达 1 ping # ping www.baidu.com PING www.a.shifen.com (220.181.112.244) 56(84) bytes of data. 64 bytes from 220.181.112.244 (220.181.112.244): icmp_seq=1 ttl=52 time=2.51 ms 64 bytes from 220.181.112.244 (220.181.112.244): icmp_seq=2 ttl=52 time=2.50 ms 2 nslookup # nslookup www.baidu.com Server: 103.224.222.222 Address: 103.224.222.222#53 Non-authoritative answer: www.baidu.com canonical name = www.a.shifen.com. Name: www.a.shifen.com Address: 220.181.112.244 二 测试ip是否可达 1 ping # ping 220.181.112.244 PING 220.181.112.244 (220.181.112.244) 56(84) bytes of data. 64 bytes from 220.181.112

Linux FTP 服务

江枫思渺然 提交于 2020-03-15 18:41:17
【FTP介绍】 FTP协议 文件传输协议(英文:File Transfer Protocol,缩写:FTP)是一个应用层协议,是用于在网络上进行文件传输的一套标准协议。 FTP协议概述 FTP服务默认运行在20和21两个端口。端口20用于在客户端和服务器之间传输数据流,而端口21用于传输控制流,通常客户端向FTP服务器的21端口发送指令达完成上传下载文件等其他控制操作。当数据通过数据流传输时,控制流处于空闲状态。而当控制流空闲很长时间后,客户端的防火墙会将其会话置为超时,这样当大量数据通过防火墙时,会产生一些问题。此时,虽然文件可以成功的传输,但因为控制会话,会被防火墙断开;传输会产生一些错误。 FTP用户分类 real帐户: 这类用户是指在FTP服务上拥有帐号。当这类用户登录FTP服务器的时候,其默认的主目录就是其帐号命名的目录。但是,其还可以变更到其他目录中去。如系统的主目录等等。 guest用户: 在FTP服务器中,我们往往会给不同的部门或者某个特定的用户设置一个帐户。但是,这个账户有个特点,就是其只能够访问自己的主目录。服务器通过这种方式来保障FTP服务上其他文件的安全性。这类帐户,在Vsftpd软件中就叫做Guest用户。拥有这类用户的帐户,只能够访问其主目录下的目录,而不得访问主目录以外的文件。 anonymous(匿名)用户: 这也是我们通常所说的匿名访问

Linux IO实时监控iostat命令详解

拟墨画扇 提交于 2020-03-15 17:49:06
简介 iostat主要用于监控系统设备的IO负载情况,iostat首次运行时显示自系统启动开始的各项统计信息,之后运行iostat将显示自上次运行该命令以后的统计信息。用户可以通过指定统计的次数和时间来获得所需的统计信息。 语法 iostat [ -c ] [ -d ] [ -h ] [ -N ] [ -k | -m ] [ -t ] [ -V ] [ -x ] [ -z ] [ device [...] | ALL ] [ -p [ device [,...] | ALL ] ] [ interval [ count ] ] 入门使用 iostat -d -k 2 参数 -d 表示,显示设备(磁盘)使用状态;-k某些使用block为单位的列强制使用Kilobytes为单位;2表示,数据显示每隔2秒刷新一次。 输出如下 iostat -d -k 1 10 Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn sda 39.29 21.14 1.44 441339807 29990031 sda1 0.00 0.00 0.00 1623 523 sda2 1.32 1.43 4.54 29834273 94827104 sda3 6.30 0.85 24.95 17816289 520725244 sda5 0.85 0.46 3.40

Linux批量修改文件名

这一生的挚爱 提交于 2020-03-15 17:47:44
find -name "*parsed" |awk '{print $1}' |xargs -i{} mv {} {}.44 ---PS 我有下面样式的一大堆文件, 1 [280094177@qq.com@ops ~]$ ll ZIP* |awk '{print $0}' 2 -rw-rw-r-- 1 dongjunjie 547 0 8月 7 2017 ZIP_10.0.20.130_ng1***省略多行 我想给它改成 我想给他改成 ZIP_name_ip 这样格式的. 1 [dongjunjie@cmcm ~]$ ll ZIP* |awk '{print $9}' | awk -F '_' '{print "mv "$0" "$1"_"$3"_"$2}' 2 mv ZIP_10.0.20.120_ng1 ZIP_ng1_10.0.20.130***省略多行 把打印出来的命令执行,即可. /*--> */ /*--> */ 来源: https://www.cnblogs.com/xd502djj/archive/2013/01/23/2873455.html