首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
linux下的有效ID和实际ID的区别
2024-08-02
Linux进程的实际用户ID和有效用户ID
转自:https://blog.csdn.net/hulifangjiayou/article/details/47400943 在Linux中,每个文件都有其所属的用户和用户组,默认情况下是文件的创建者,也可以根据chown和chgrp来修改文件所属的用户和用户组.文件的属性存放在属性结构stat中,其中有st_uid和st_gid标志着. 先举个例子.假设现在系统中有两个用户liz和hlf,有一个程序文件file的所属用户为hlf.然后使用liz用户登录系统,运行file文件,则运行进程pr
Linux 下Shell变量,环境变量的联系与区别
Linux下Shell变量,环境变量的联系与区别 by:授客 QQ:1033553122 1. 简介 linux下的变量可分成两种:Shell变量和环境变量. Shell变量,又称本地变量,包括私有变量以及用户变量,不同类的shell有不同的私有变量,bash,ksh,csh等,每种shell的私有变量都不一样 环境变量,又称用户变量,与shell无关 常规定义变量的方法:变量名=变量值 注意: 1.变量名和=号之间不能有空格,否则shell会把变量名当成命令 2.变量名称一般使用大写字母 2
linux下shell编程示例-获取进程id
今天初步学习了一下linux下的shell编程,简单记录一下测试用例 1.编辑shell脚本文件如下: #!/bin/bashecho "hello bash linux"echo "第0个参数:$0"echo "第一个参数:$1"echo "当前子shell进程:$$" #pidarr=`ps x | awk '{print $1}'`pidarr=$(ps x | awk '{print $1}')echo $pidadd
Linux下which、whereis、locate、find 区别
我们经常在linux要查找某个文件或命令,但不知道放在哪里了,可以使用下面的一些命令来搜索.which 查看可执行文件的位置 whereis 查看文件的位置 locate 配合数据库查看文件位置 find 实际搜寻硬盘查询文件名称 1.which 语法: which 可执行文件名称 例如: [root@redhat ~]# which passwd /usr/bin/passwd which是通过 PATH 环境变量到该路径内查找可执行文件,所以基本的功能是寻
Linux下环境变量(.bash_profile和.bashrc的区别)
在linux系统下,如果下载并安装了应用程序,在启动时很有可能在键入它的名称时出现"command not found"的提示内容.如果每次都到安装目标文件夹内,找到可执行文件来进行操作就太繁琐了,这种情况下就涉及到环境变量PATH的设置问题,而PATH的设置也是在linux下定制环境变量的一个组成部分. 环境变量配置的两个方法: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1)修改/etc/profile文件 推荐使用这种方法,因为所有用户的shell都有
[转载] Linux下多路复用IO接口 epoll select poll 的区别
原地址:http://bbs.linuxpk.com/thread-43628-1-1.html 废话不多说,一下是本人学习nginx 的时候总结的一些资料,比较乱,但看完后细细揣摩一下应该就弄明白区别了: 我们先来介绍下nginx nginx :支持高并发连接.官方测试的是5w并发连接但在实际生产中可制成2-4w并发连接数,得益于nginx使用最新的epoll(linux 2.6内核)和kqueue(freebsd)网络I/O模型.而apache使用的则是传统的select模型,其比较稳定的
Linux下多路复用IO接口epoll/select/poll的区别
select比epoll效率差的原因:select是轮询,epoll是触发式的,所以效率高. Select: 1.Socket数量限制:该模式可操作的Socket数由FD_SETSIZE决定,内核默认32*32=1024. 2.操作限制:通过遍历FD_SETSIZE(1024)个Socket来完成调度,不管哪个Socket是活跃的,都遍历一遍. Poll: 1.Socket数量几乎无限制:该模式下的Socket对应的fd列表由一个数组来保存,大小不限(默认4k). 2.操作限制:同Select.
linux下的sleep()和usleep()的使用和区别
函数名: sleep头文件: #include<windows.h> // 在VC中使用带上头文件 #include<unistd.h> // 在gcc编译器中,使用的头文件因gcc版本的不同而不同功 能: 执行挂起指定的秒数语 法: unsigned sleep(unsigned seconds); #include<stdio.h> #include<stdlib.h> #include<time.h> i
网络篇:linux下select、poll、epoll之间的区别总结
select.poll.epoll之间的区别总结 select,poll,epoll都是IO多路复用的机制.I/O多路复用就通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作.但select,poll,epoll本质上都是同步I/O,因为他们都需要在读写事件就绪后自己负责进行读写,也就是说这个读写过程是阻塞的,而异步I/O则无需自己负责进行读写,异步I/O的实现会负责把数据从内核拷贝到用户空间.关于这三种IO多路复用的用法,前面三篇总结
linux下recv 、send阻塞、非阻塞区别和用法
非阻塞IO 和阻塞IO: 在网络编程中对于一个网络句柄会遇到阻塞IO 和非阻塞IO 的概念, 这里对于这两种socket 先做一下说明: 基本概念: 阻塞IO:: socket 的阻塞模式意味着必须要做完IO 操作(包括错误)才会 返回. 非阻塞IO:: 非阻塞模式下无论操作是否完成都会立刻返回,需要通过其他方 式来判断具体操作是否成功.(对于connect,accpet操作,通过select判断, 对于recv,recvfrom,send,sendto通过返回值+错误码来判断) I
Linux下/目录 、/home目录 、~目录的区别
/ :根目录 ,所有目录的最顶层目录,从任何用户执行该命令都会进入同一个目录,即所有用户共享.如下图: /home:/下面的home目录,名为家目录,但是很多人叫为用户列表目录,因为/home下是这台机器的用户名.如下图: ~目录:当前用户的家目录 在root用户下,~就代表/root.如图: 在普通用户目录下,~就代表/home/普通用户名.如图:
比较一下Linux下的Epoll模型和select模型的区别
一. select 模型(apache的常用) 1. 最大并发数限制,因为一个进程所打开的 FD (文件描述符)是有限制的,由 FD_SETSIZE 设置,默认值是 1024/2048 ,因此 Select 模型的最大并发数就被相应限制了.自己改改这个 FD_SETSIZE ?想法虽好,可是先看看下面吧 … 2. 效率问题, select 每次调用都会线性扫描全部的 FD 集合,这样效率就会呈现线性下降,把 FD_SETSIZE 改大的后果就是,大家都慢慢来,什么?都超时了. 3. 内核 / 用
Linux下文件权限(一)用户ID和用户组ID
最近在读<unix环境高级编程>,看到文件权限这里比较糊涂,主要设计多个用户ID和用户组ID,包括下面两个: (1)实际用户ID和实际用户组ID:这一部分表示我们究竟是谁.这两个字段在登录时取自口令文件中的登录项.通常,在一个登录会话期间这些值并不改变,但是超级用户进程有办法改变他们.简单来说,实际用户ID是登录用户的uid,实际用户组Id是登录用户的gid. (2)有效用户ID和有效用户组ID:这一部分用于文件的权限检查.一般情况下,有效用户ID等于实际用户ID,有效用户组ID等于实际用户组
Linux下如何查看tomcat是否安装、启动、文件路径、进程ID
Linux下如何查看tomcat是否安装.启动.文件路径.进程ID 在Linux系统下,Tomcat使用命令的操作! 检测是否有安装了Tomcat: rpm -qa|grep tomcat 查看Tomcat的进程ID: ps -ef|grep tomcat 查看Tomcat目录: find / -name tomcat 首先,进入Tomcat下的bin目录 cd /usr/local/tomcat/bin 使用Tomcat关闭命令 ./shutdown.sh 查看Tomcat是否以关闭 ps -
Linux下查找进程id并强制停止进程的脚本
Linux下的tomcat的停止脚本shutdown.sh经常失败,造成tomcat进程没关闭.所以只能手动查找进程id,然后用kill命令来强制停止.每次都要这样查一下,然后再杀进程.感觉有点麻烦,所以就把这个动作写在了脚本里面. 一.思路 这个脚本其实就2步,先获取进程id,然后 kill 掉这个进程. (1)获取进程id的方法 这个可以用 awk命令来获取 ps -ef | grep 你的进程 | grep -v grep | awk '{print $2}' 1
Linux下用命令查看CPU ID以及厂家等信息
Linux下用命令查看CPU ID // 获得CPU IDdmidecode -t 4 | grep ID |sort -u |awk -F': ' '{print $2}' // 获得磁盘IDfdisk -l |grep "Disk identifier" |awk {'print $3'} 查看CPU信息cat /proc/cpuinfo 显示当前硬件信息sudo lshw 获取CPU序列号或者主板序列号#CPU IDsudo dmidecode -t 4 | grep ID #S
【转】linux 设置用户id 设置组id
linux 设置用户id 设置组id 转自 linux 设置用户id 设置组id 最近看apue,简单记录对设置用户id理解(设置组id同理). 1. 相关的id好像很多,共有哪些? 文件2个id 2个位: 拥有者id 拥有者组id 设置用户id位 设置组id位 进程6个或更多的id(如果有附加组id): 实际用户id 实际组id (仅仅标志我们是谁,不参与文件访问权限检测) 有效用户id
获取CPU ID ,disk ID, MAC ID (windows ARM linux Mac)
windows 命令行获取CPU ID,可以用ShellExecute wmic cpu get processorid ProcessorId BFEBFBFF000506E3 开源库: 查询CPU信息 . 包括ARM Mac windows qemu https://www.qemu.org/ 读取硬盘序列号 获取CPU的ID #include <intrin.h> // 所有Intrinsics函数 //64位程序,微软不支持内嵌汇编指令 //https://blog.csdn.net/
萌新笔记——linux下查看内存的使用情况
windows上有各种软件可以进行"一键加速"之类的操作,释放掉一些内存(虽然我暂时不知道是怎么办到的,有待后续学习).而任务管理器也可以很方便地查看各进程使用的内存情况,如下图: 同样地,linux下也有一些方法来查看内存的使用情况. 一.free 对于free命令,可以加上-m参数,使其显示单位为Mb.如下: [ccx@ubuntu ~]$>free total used free shared buffers cached Mem: -/+ buffers/cache: S
我将系统从Windows迁移至Linux下的点点滴滴
一.写在最前 由于本人的技术水平有限,难免会出现错误.本文对任何一个人有帮助都是我莫大的荣幸,任何一个大神对我的点拨,我都会感激不尽. 二.技术选型 在2013年8月低的时候,公司中了XXX市场监督局肉品配送车辆监控的项目.整个系统软件部分需要实现的功能不难,最大的难点就是服务器的系统要求是Linux的,其次就是10月底系统能够初步成型.由于之前做的车辆监控系统都基于Windows的,要在短时间内完成这个项目,于是Mono就成了我的首选.张善友的博客,也成了我经常光顾的地方,后来通过跟张哥的一番
Linux下反弹shell的种种方式
[前言:在乌云社区看到反弹shell的几种姿势,看过之余自己还收集了一些,动手试了下,仅供参考] 0x01 Bash bash -i >& /dev/tcp/ >& 这里shell由bash解析,有时候是由sh解析,不一定百发百中***在虚拟机里面试过可行,替换成自己的地址和端口即可******/dev/[tcp|upd]/host/port是Linux设备里面比较特殊的文件,读取或写入相当于建立socket调用******由于其特殊性,命令执行后依旧无法找到/dev/tcp目
热门专题
vue实现tab选项卡
Android 无障碍获取图片
nginx rtmp 推流更改路径
windows最新系统是什么
字符串最后一个单词的长度 oc
阿里云返回的封面图是颠倒的
docker build 指定dockerfile 名称
怎么破解加固app没有源码包
aop获取requestbody对象
react手机返回键事件h5
element 级联下拉框 默认绑定值
istat menus 激活
pandorabox wan ap模式
intel realsense 成立时间
faster rcnn 如何边框回归
ubuntu mate 18.04 镜像文件
canvas实现的动态穿越酷炫html5特效
fastjson 序列化 顺序
ajax 设置请求头
kafka注册到 不使用hostname