一、用户、用户组
-G 用户组,用户组 指定用户所属的附加组。
4.查看用户组
查看当前用户所在组:groups
查看a用户所在组:groups a
/etc/group文件包含所有组
/etc/shadow文件包含所有用户
/etc/group文件内容:
第一段表示组名,第二段是密码段,x表示没有设置密码,第三段是GID号码,第四段是组内成员。所以这个例子里 mail组内有成员mail、postfix以及GID为12的用户
5.把用户加入某用户组:
usermod -a -G groupA user
二、权限管理
linux系统的权限分三种,读写,只读、执行。文件的创建者自动拥有这三个权限。
上图中最左侧的一列显示的就是文件权限。(第三列表示文件所有者,第四列表示文件所属组。)其中第一位表示文件类型。第2-4列表示属主的读、写、执行权限。第5-7列表示与属主同组的用户权限。第8-10列表示其他用户的权限。
使用chmod更改权限:r对应4,w对应2,x对应1。
命令格式:chmod 754 目录 (属主有三项权限,属主的同组有读和执行权限,其他用户只有读权限)
使用chown更改文件所有权:
chown改变属主:chown user ./123.txt
chown改变属组:chown :develop ./123.txt
三、输入、输出重定向
1.标准输入
命令 < 文件
例子:mail -s “mail test” test@ahlinux.com < file1
将文件file1 当做信件的内容,主题名称为mail test,送给收信人。
2.标准输出
命令 > 文件
例子:ll > list.txt tail -f catalina.out > log.txt
四、alias设置指令别名
alias 别名=’命令‘
例子:alias cdb='cd /app/jboss/bin'
删除alias:unalias 别名
例子:unalias cdb
五、ps查看进程(progress status)
常用命令:ps -ef |grep java
-e表示显示所有进程
-f表示显示进程的详细信息
ps aux
a表示显示其他用户的进程
x表示显示自己的进程
u表示显示启动这个进程的用户和启动时间
但是我并没有看出a和x的区别,如下图。这个问题有待进一步研究
六、查看端口
如果有端口被占用,如8080被占用:
第一步:命令:netstat -anp |grep 8080 查看18080被什么东西占用
发现是pid为1648的一个httpd程序占用了18080端口
注:netstat -anp命令可以用来查看哪些端口在使用中
第二步:命令:ps aux |grep 1648
查看具体1648是哪个程序
如果是想看某程序都占用了什么端口:
第一步:ps -ef |grep 程序关键字(java)
查到我们的目标程序是最后一个,程序进程号为12367
第二步:netstat -nltp |grep 12367
七.kill 进程
命令:kill 参数 进程号
不要直接使用kill -9
先用kill -15
恩,这个命令没啥太多说的了。可以一次kill多个进程
八.解压、打包
.gz为后缀的压缩包是gzip压缩程序打出来的包。使用tar命令时,加上参数z就可以调用gzip程序进行压缩或解压缩。
tar命令的格式:
解压:tar zxvf name.tar.gz
压缩:tar zcvf name.tar.gz dirname