【Linux】用户、用户组和权限管理,以及ssh远程连接和查看进程、系统时间、磁盘空间、分区、结束进程等操作

概述

  1. 用户:要登录Linux必须要有一个用户,一台Linux系统下可以有多个用户,并且每个用户可有不同的权限。在Linux中可以指定用户对不同的文件、目录拥有不同的权限
  2. 用户组:Linux有一个组的概念不同的用户分配到一个组,那么同组下的用户,都拥有这个组的权限
  3. 权限:Linux权限有三种,读、写、执行
目录拥有者权限组权限其他用户权限
-r w -r w -r - -
dr w xr w xr - x

用户管理

创建用户

useradd [用户名]

在这里插入图片描述

选项说明
-d:指定的新账户的主目录
-g:指定用户的所属组
-G:指定用户附加组
-s:指定用户登录shell
-m:自动创建家目录用户

whoami:可查看当前用户名
在这里插入图片描述

删除用户

userdel [用户名]

选项说明
-r:删除用户的同时删除家目录

修改用户密码

passwd 用户名


在xshell中连接新用户:
在这里插入图片描述

修改用户账号属性

命令usermod
选项说明
-u:用户id
-g:所属组id

root@ubuntu:/home# usermod -g root Test1
root@ubuntu:/home# id Test1
uid=1001(Test1) gid=0(root)=0(root)

-a -G GID:追加修改组,不使用-a选项,会覆盖此前附加组

root@ubuntu:/home# usermod -a -G Test1 Test1   #第一个为组名,第二个为要修改的用户名
root@ubuntu:/home# id Test1
uid=1001(Test1) gid=0(root)=0(root),1001(Test1)

-d -m:将家目录内容移至新位置
-s:该用户账号的新登录
-l:新的登录名称

用户切换

su - [用户名]:加-同时切换得到用户的家目录,不加直接在当前目录切换到新用户

用户组管理

创建用户组groupadd

root@ubuntu:/home# groupadd admin

删除用户组groupdel

root@ubuntu:/home# groupdel admin

修改组属性groupmod
-g Gid

修改组id:

root@ubuntu:/home# id Test1
uid=1001(Test1) gid=0(root)=0(root),1001(Test1)
root@ubuntu:/home# groupmod -g 12222 Test1
root@ubuntu:/home# id Test1
uid=1001(Test1) gid=0(root)=0(root),12222(Test1)

修改名字:

root@ubuntu:/home# groupmod -n PythonGroup Test1

提示

  • 创建用户时,会默认创建一个与用户名同名的组名
  • 创建成功后可在/etc/passwd文件下查看
  • 新创建的用户没有sudo权限,需要用户加到adm,sudo这两个组中才拥有sudo权限

chown改变所有者

chown [选项] [最终用户] [文件或目录] #改变文件或者目录的所有者

-R:递归操作

权限管理

字母表示

命令chomd +/- rwx 文件名|目录名:+增加权限,-取消权限
:每个文件都有三组不同的权限,第一组文件所有者,第二组是文件所属组,第三组是其他用户

  1. 第一组:u文件所有者,修改所有者权限:chmod u+/-/= rwx filename
  2. 第二组:g文件所有者,修改所属组权限:chmod g+/-/= rwx filename
  3. 第三组:o其他用户,修改所属组权限:chmod o+/-/= rwx filename

权限管理

数字表示

命令chmod 755 文件名|目录名:指定权限修改
:chmod中第一个数字代表所有者权限,第二个数字代表所属组权限,第三个数字代表其他人权限

权限数字表示法
r4
w2
x1

远程管理

ifconfig:查看系统IP地址

在这里插入图片描述

ping命令

检查网络是否正常通行,Linux下默认ping不会结束,使用Ctrl+c强制结束
示例:ping www.badiu.com
在这里插入图片描述
其它选项
ping -c:指定ping几个数据包结束
ping -i:指定发送数据包的间隔,单位为秒
ping -s:指定发送数据的大小,单位字节
ping -t:设置TTL的大小,TTL网络调数大小

ssh远程连接

ssh是一种网络协议,用于计算机之间的加密登录。Linux下默认开启sshd服务,只有开启sshd服务才能进行ssh连接。
可以使用service sshd status查看是否开启sshd服务。active(running)表示已经开启
在这里插入图片描述
如果没有,则需安装openssh-server(本机),openssh-client(别的机器)

frank@ubuntu:~$ sudo apt-get install openssh-server

Windows下连接方式

  1. 借助第三方软件,xshell或者putty来连接
  2. ssh端口号默认:22

Linux下ssh命令连接方式

ssh -p 端口 主机:-p可以指定端口,ssh一般默认22,看到提示welcome表示已经连接成功
在这里插入图片描述
在这里插入图片描述

scp文件复制

  • scp就是secure copy,是一个在Linux下用来进行远程拷贝文件的命令
  • 示例1:将另一台电脑的/home/day_8.7_01文件复制到本机的/home/中
root@ubuntu:/home# scp frank@192.168.78.129:/home/day_8.7_01 /home/
  • 示例2:将本机的/home/testssh.txt文件复制到另一台电脑的frank@192.168.78.129:/home/frank中
root@ubuntu:/home# scp /home/testssh.txt frank@192.168.78.129:/home/frank
  • 示例3:scp -r可以复制文件夹,把当前目录下的copy文件夹 复制到远程目录下的Desktop
root@ubuntu:/home# scp -r copy frank@ubuntu:Desktop
  • 示例4:将远程主机的test881文件夹包括文件 复制到本机的桌面
root@ubuntu:~# scp -r frank@192.168.78.129:/home/8.8/test881 Desktop
  • :scp只能在Linux中使用,Windows下往Linux上传下载文件可以使用winscp

netstat 显示网络状态和端口占用信息

netstat -anp | grep 进程号 #查看该进程网络信息
netstat -nlp | grep 端口号 #网络端口号占用情况
选项功能
-a显示所有正在监听(listen)和未监听的套接字(socket)
-n拒绝显示别名,能显示数字的全部转化成数字
-l仅列出在监听的服务状态
-p表示显示哪个进程在调用

在这里插入图片描述

系统信息管理

查看系统时间

date:查看系统当前时间

date [选项] [+参数] #时间日期类
date #显示当前时间
选项功能
-d<时间字符串>显示指定的“时间字符串”表示的时间,而非当前时间
-s<日期时间>设置系统日期时间

在这里插入图片描述

参数功能
<+日期时间格式>指定显示时使用的日期时间格式
date显示当前时间
date +%Y显示当前年份
date +%m显示当前月份
date “+%Y-%m-%d %H:%M:%S”显示年月日时分秒

在这里插入图片描述

cal:查看日历

cal [选项] #不加选项显示本月日历,加年份显示一年的日历

在这里插入图片描述
crontab:系统定时任务

crontab [选项]
选项功能
-e编辑crontab定时任务
-l查询crontab任务
-r删除当前用户所有的crontab任务

查看磁盘空间

df -TH查看磁盘分区,以及挂载情况

root@ubuntu:/home# df -TH
文件系统       类型      容量  已用  可用 已用% 挂载点
udev           devtmpfs  1.1G     0  1.1G    0% /dev
tmpfs          tmpfs     207M   13M  194M    7% /run
/dev/sda1      ext4       51G   19G   30G   39% /
tmpfs          tmpfs     1.1G  259k  1.1G    1% /dev/shm
tmpfs          tmpfs     5.3M  4.1k  5.3M    1% /run/lock
tmpfs          tmpfs     1.1G     0  1.1G    0% /sys/fs/cgroup
tmpfs          tmpfs     207M   66k  207M    1% /run/user/1000

du -sh [目录名]:查看目录大小

root@ubuntu:/home# du -sh
11G	.

du -h [文件名]:查看文件大小

root@ubuntu:/home# du -h copy
20K	copy
选项功能
-h以人们较易阅读的格式自行显示
-a不仅查看子目录大小,还要包括文件
-c显示所有的文件和子目录大小后,显示总和
-s只显示总和
–max-depth=n指定统计子目录的深度为第n层

查看设备挂载情况

lsblk #查看设备挂载情况
lsblk -f #查看详细的设备挂载情况,显示文件系统信息

mount/umount挂载/卸载

"挂载"是指将一个文件系统连接到操作系统的目录树中的特定位置,以便可以访问该文件系统中的文件和目录。

mount [-t vfstype] [-o options] device dir #瓜子挂载设备
umount 设备文件名或挂载点 #卸载设备
lsblk #查看挂载情况
参数功能
-t vfstype指定文件系统的类型,通常不必指定。mount会自动选择正确的类型
-o options主要用来描述设备或档案的挂接方式。loop:用来把一个文件当成硬盘分区挂接上系统; ro:采用只读方式挂接设备; rw:采用读写方式挂接设备; iocharset:指定访问文件系统所用字符集
device要挂接(mount)的设备
dir设备在系统上的挂接点(mount point)

挂载:将/dev/cdrom文件挂载到/mnt/cdrom/目录下
在这里插入图片描述
卸载:

开机自动挂载:

vim /etc/fstab 

在/etc目录下的fstab文件中编辑内容如下:
在这里插入图片描述

fdisk分区

fdisk -l #查看磁盘分区详情
fdisk 硬件设备名 #对新增硬盘进行分区操作

-l :显示所有硬盘进行分区操作
该命令必须在root用户下才能使用
在这里插入图片描述
在这里插入图片描述

查看内核/操作系统/CPU信息

uname -a:查看内核/操作系统/CPU信息

root@ubuntu:/home# uname -a
Linux ubuntu 4.15.0-51-generic #55~16.04.1-Ubuntu SMP Thu May 16 09:24:37 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

uname -i:查看硬件平台

root@ubuntu:/home# uname -i
x86_64

uname -m:查看CPU

root@ubuntu:/home# uname -m
x86_64

uname -n:节点名称

root@ubuntu:/home# uname -n
ubuntu
````uname -o`:操作系统
```bash
root@ubuntu:/home# uname -o
GNU/Linux

uname -v:内核版本

root@ubuntu:/home# uname -v
#55~16.04.1-Ubuntu SMP Thu May 16 09:24:37 UTC 2019

uname -r:发行版本号

root@ubuntu:/home# uname -r
4.15.0-51-generic

查看进程

  1. top
top #查看进程实时运行情况,即系统资源实时使用情况,退出top界面输入q
选项功能
-d 秒数指定top命令每隔几秒更新。默认是3秒在top命令的交互模式当中可以执行的命令
-i使top不显示任何闲置或者僵死进程
-p通过指定监控进程ID来仅仅监控某个进程的状态

在这里插入图片描述

操作功能
P以CPU使用率排序,默认就是此项
M以内存的使用率排序
N以PID排序
q退出top

一些说明

符号说明
PID进程id
USER进程所有者
PR进程优先级
NInice值。负值表示高优先级,正值表示低优先级
VIRT进程使用的虚拟内存总量,单位kb。 VIRT=SWAP+RES
RES进程使用的、未被换出的物理内存大小,单位kb
SHR共享内存大小,单位kb
S进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
%CPU上次更新到现在的CPU时间占用百分比
%MEM进程使用的物理内存百分比
TIME+进程使用的CPU时间总计,单位1/100秒
COMMAND进程名称(命令名/命令行)
  1. ps
ps #查看系统所有进程的状态
ps aux | grep xxx  #查看系统中所有进程
ps -ef | grep xxx #可以查看子父进程之间的关系
选项功能
a列出带有终端的所有用户的进程
x列出当前用户的所有进程,包括没有终端的进程
u面向用户友好的显示风格
-j以作业控制格式显示进程信息
-e列出所有进程
-u列出某个用户关联的所有进程
-f显示完整格式的进程列表

ps aux | less 命令的显示信息及说明:
在这里插入图片描述

符号说明
PID进程的ID号
%CPU该进程占用CPU资源的百分比,占用越高,进程越耗费资源
%MEM该进程占用物理内存的百分比,占用越高,进程越耗费资源
VSZ该进程占用虚拟内存的大小,单位为KB
RSS该进程占用实际物理内存的大小,单位为KB
TTY该进程是在哪个终端中运行的
STAT进程状态
START该进程的启动时间
TIME该进程占用CPU的运算时间,注意不是系统时间
COMMAND产生此进程的命令名

常见的进程状态:

符号状态
D不可中断系统进程
R运行中的进程
S中断sleep状态
T停止
Z僵死,一般称之为僵尸进城
s包含子进程
l多线程
+前台显示

查看进程树

pstree [选项]
选项功能
-p显示进程的PID
-u显示进程的所属用户

在这里插入图片描述

结束进程

kill [参数] [进程号]
kill -9 [进程号] #强制结束进程
kill -15 [进程号] #结束进程,等级没有-9高

Linux中的1号进程(init进程)是所有进程的祖先进程,是不能被结束的

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值