美文网首页
Linux用户相关操作

Linux用户相关操作

作者: 刘昊2018 | 来源:发表于2018-04-06 09:47 被阅读12次

Linux用户相关操作

这篇文章主要记录一下几个问题

  • 登录远程Linux主机

  • 关机重启命令

  • 用户管理增删用户

  • 用户组的概念

  • 最佳实践

远程登录

要实现远程登录,首先需要保障的是Linux下的sshd启动正常。
windows下我们可以使用xshell5建立会话的方式建立连接,在mac下,我们更多使用命令的方式。

ssh root@192.168.230.128

之后输入密码,即可登录。

关机重启命令

使用shutdown命令

立即关机
shutdown -h now
halt

以上两条命令都可以用来关机

延迟关机 一分钟以后
shutdown -h 1
立即重启
shutdown -r now
reboot

以上两个命令都可以用来重启

同步

sync

在关机或重启之前,我们可以先执行sync命令,将内存中的数据同步到磁盘。

注销

logout 

需要强调的事,这条命令只在远程访问时有效。我们可以理解为退出了连接会话。

用户管理

在这之前,我们一直使用的事root用户进行的操作,而在现实生产中,我们是一定要重视安全问题的,因为root用户具有极高的操作权限,如果我们每次都使用root用户去操作,可能会造成生产事故。所以往往我们会为开发人员创建单独的用户,而root用户密码仅仅只掌握在少数人手中。

创建用户

非常简单的命令,如下:

useradd dev1

此时我们就成功创建了除了root用户以外的第一个用户。
这里需要注意的是,当我们观察根目录下的home目录下会生成与用户名同名的文件夹。这也说明,我们创建用户的操作是成功的。

/home/dev1

刚才,我们仅仅创建了用户,如果需要登录到远程,还需要密码。

为用户设置密码
passwd dev1

之后连续输入两次密码,前后须保持输入一致。可能会提示密码过于简单等问题。可以不用管。

此时,我们可以退出会话,使用dev1来连接了。

logout
ssh dev1@192.168.230.128

正常的话,我们就可以用dev1连接到会话了。

删除用户

要实现删除用户,我们肯定得使用root账号了。看以下命令:

//断开dev1建立的会话
logout
ssh root@192.168.230.128 

userdel dev1

成功之后,为了验证该用户确实无法再登录远程,我们可以测试

// 断开root
logout
ssh dev1@192.168.230.128

正常的话,远程主机会反馈我们如下信息

Permission denied, please try again.

当我们以后再看到这样的信息,应该要考虑用户是否被删除导致无法登录。

此时,我们应该想到,用户被创建时,同时被创建的同名文件夹是否被删除了呢,我们一探究竟。

不出意外的话,结果应该是,文件夹还存在。也就是说,虽然我们删除了用户,但是那个用户之前创建的文件等信息依然留存。如果我们想连同该用户对应的文件夹删除,我们可以尝试以下命令。

为了方便演示,我们创建dev2用户

useradd dev2
passwd dev2
logout
ssh dev2@192.168.230.128

使用新创建dev2连接会话,查看home目录,dev2目录存在。
其实,我们是有疑惑的,为什么dev2下没有像/root下那么多目录,比如桌面,文档,下载等等。那是因为,dev2没有在远程主机的桌面环境下登录过,所以为了dev2下显示的内容更完整,我们可以尝试在centos桌面环境下登录一次。

cd /home/dev2
ls -al

总用量 140
drwx------. 25 dev2 dev2 4096 4月   6 18:04 .
drwxr-xr-x.  5 root root 4096 4月   6 17:32 ..
drwxrwxr-x.  2 dev2 dev2 4096 4月   6 17:45 .abrt
-rw-------.  1 dev2 dev2  302 4月   6 17:45 .bash_history
-rw-r--r--.  1 dev2 dev2   18 5月  11 2016 .bash_logout
-rw-r--r--.  1 dev2 dev2  176 5月  11 2016 .bash_profile
-rw-r--r--.  1 dev2 dev2  124 5月  11 2016 .bashrc
drwxr-xr-x.  3 dev2 dev2 4096 4月   6 17:45 .cache
drwxr-xr-x.  5 dev2 dev2 4096 4月   6 17:45 .config
drwx------.  3 dev2 dev2 4096 4月   6 17:45 .dbus
-rw-------.  1 dev2 dev2   16 4月   6 17:45 .esd_auth
drwx------.  4 dev2 dev2 4096 4月   6 17:46 .gconf
drwx------.  2 dev2 dev2 4096 4月   6 17:46 .gconfd
drwxr-xr-x.  5 dev2 dev2 4096 4月   6 17:45 .gnome2
drwxrwxr-x.  3 dev2 dev2 4096 4月   6 17:45 .gnote
drwx------.  2 dev2 dev2 4096 4月   6 17:45 .gnupg
-rw-rw-r--.  1 dev2 dev2  185 4月   6 17:45 .gtk-bookmarks
drwx------.  2 dev2 dev2 4096 4月   6 17:45 .gvfs
-rw-------.  1 dev2 dev2  310 4月   6 17:45 .ICEauthority
-rw-r--r--.  1 dev2 dev2  791 4月   6 17:45 .imsettings.log
drwxr-xr-x.  3 dev2 dev2 4096 4月   6 17:45 .local
drwxr-xr-x.  4 dev2 dev2 4096 4月   4 06:56 .mozilla
drwxr-xr-x.  2 dev2 dev2 4096 4月   6 17:45 .nautilus
drwx------.  2 dev2 dev2 4096 4月   6 17:45 .pulse
-rw-------.  1 dev2 dev2  256 4月   6 17:45 .pulse-cookie
drwx------.  2 dev2 dev2 4096 4月   6 17:45 .ssh
-rw-------.  1 dev2 dev2 1293 4月   6 17:45 .xsession-errors
drwxr-xr-x.  2 dev2 dev2 4096 4月   6 17:45 公共的
drwxr-xr-x.  2 dev2 dev2 4096 4月   6 17:45 模板
drwxr-xr-x.  2 dev2 dev2 4096 4月   6 17:45 视频
drwxr-xr-x.  2 dev2 dev2 4096 4月   6 17:45 图片
drwxr-xr-x.  2 dev2 dev2 4096 4月   6 17:45 文档
drwxr-xr-x.  2 dev2 dev2 4096 4月   6 17:45 下载
drwxr-xr-x.  2 dev2 dev2 4096 4月   6 17:45 音乐
drwxr-xr-x.  2 dev2 dev2 4096 4月   6 17:45 桌面

我们可以看到dev2用户产生的工作内容全在dev2目录下。

我们尝试在桌面下创建一个文件

cd 桌面
echo hello > test.txt  //create test.txt file

再次退出使用root连接,尝试删除dev2用户的同时删除dev2目录。

logout
ssh root@192.168.230.128

user del -r dev2

cd /home/dev2
ls -al
总用量 0

需要注意的是,我们在正常删除用户命令的基础上加了-r参数,即可删除文件,但是文件本身不会被删除,删除用户名文件夹下的子项。

用户组

为了方便演示,我们创建dev3dev4用户。

useradd dev3
passed dev3

useradd dev4
passed dev4

在讲用户组之前,我们先来学习一个命令,非常简单:

id root
uid=0(root) gid=0(root) 组=0(root)
id dev3
uid=502(dev3) gid=502(dev3) 组=502(dev3)
id dev4
uid=503(dev4) gid=503(dev4) 组=503(dev4)

id username可以用来查看用户信息。

这里涉及到了几个专用名词。

  • uid 指用户id(用户名)
  • gid 指用户所在组id (组名)

我们看到,我们在创建一个用时,Linux时将用户名当做组名,并将该用户加入改组中。

那么我们如何先创建组,再把用户加入其中呢,步骤如下:

groupadd common

user add -g common common-user1

id common-user1

uid=504(common-user1) gid=504(common) 组=504(common)

解释一下:

  • groupadd groupname 用来创建一个组
  • user add -g groupname username 创建用户并指定组
为用户换组

将common-user1迁移到super组。

grouped super
groupmod -n super common-user1

id common-user1
uid=504(common-user1) gid=506(super) 组=506(super)

我们可以看到,common-user1用户所在组从common变成了super。

最佳实践

我们认为,用户操作相关的最佳实践应该遵循如下几条:

  • 每个人使用不同的用户账号登录

  • 当遇到需要高权限才能解决的问题时,可以使用切换用户命令。

假设当前用户为dev3,处理问题权限不够,可以切换为root用户

su - root

// 处理完以后,再回到dev3用户

exit

//dev3 mode
  • 将用户放在不同的组,在实际开发中,可以开发人员一组,负责人一组。酌情处理。

最后

以上是我学习Linux用户相关操作的体会,对这一方面的理解还需要在不断的学习中去加升理解。

相关文章

  • centos 7 常用操作命令

    用户操作 文件操作 系统相关操作 linux系统服务管理命令 防火墙操作相关 压缩、解压 相关操作 快捷键操作

  • Linux用户相关操作

    Linux用户相关操作 这篇文章主要记录一下几个问题 登录远程Linux主机 关机重启命令 用户管理增删用户 用户...

  • Linux-用户相关操作

    一、用户 0. 查看当前用户-whoami 1. 添加用户-useradd 添加用户还能用adduser user...

  • 生信Day2笔记-Tsubasa

    简单认识Linux (一)Linux相关知识 定义:linux是服务器领域之首的操作系统 优点: ①支持很多用户同...

  • linux 命令(持续更新ing ...)

    查看系统相关信息 直接作用于linux系统的相关操作 文件目录相关操作 磁盘操作 获取帮助 linux操作系统访问...

  • Linux权限管理

    Linux的权限管理操作Linux的权限操作与用户、用户组是兄弟操作。 一、权限概述 总述:Linux系统一般将文...

  • OS Experiment-01

    实验目的:熟悉Linux命令 目录操作命令 文件操作命令 文本文件查看命令 用户系统命令 网络相关命令 U盘的使用...

  • Linux:用户相关

    1. 用户添加、删除、更新 添加用户 常用选项 例如可以 或者其实直接使用 可以更精简的添加一个test用户,其主...

  • linux——相关操作

    https://pan.baidu.com/s/1tQ8H3TToB5vrGKw0NF_5HQ

  • Linux的常用命令--文件的相关操作

    Linux的常用命令--文件的相关操作 1,用户的切换 su (switch user) 2,显示当前目录的文件列...

网友评论

      本文标题:Linux用户相关操作

      本文链接:https://www.haomeiwen.com/subject/igujhftx.html