Linux远程管理、用户权限常命令(四)

笑着哭i 提交于 2019-12-09 20:35:10

远程管理常用命令


        关机/重启:shutdown
            shutdown 选项 时间
                可以安全关闭或者重新启动系统
                -r 重新启动
                    ps:不指定选项和参数,默认表示1分钟之后关闭电脑
                        远程维护服务器时,最好不要关闭系统,而应该重新启动系统
                shutdown -r now:重启操作系统,其中now表示现在
                shutdown now :立刻关机
                shutdown 20:25 :系统在今天20:25会关机
                shutdown +10 :10分钟后自动关机
                shutdown -c :取消之前制定的关机计划

        查看或配置网卡信息:
            ifconfig         configure a network interface     查看/配置计算机当前的网卡配置信息
            ping ip地址   ping                                             检测到目标ip地址的连接是否正常
                网卡:
                    网卡是一个专门负责网络通讯的硬件设备
                    ip是设置在网卡上的地址信息
        远程登录和复制文件
            ssh
                在Linux中SSH是非常常用的工具,通过SSH客户端我们可以连接到运行了SSH服务器的远程机器上
                    数据传输加密,防信息泄露
                    数据压缩,提高传输速度
                    SSH客户端是一种使用Secure Shell(SSH)协议连接到远程计算机的软件
                    SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全的协议

                域名和端口号
                    域名:
                        有一串用点分隔的名字组成,例如:www.baidu.com
                        是IP地址的别名,方便用户记忆

                    端口号
                        通过IP地址找到网络上的计算机
                        通过端口号可以找到计算机上运行的应用程序
                            SSH服务器的默认端口号是22,如果是默认端口号,在连接的时候可以省略

                        常见的服务器端口号列表:
                            SSH服务器  22
                            Web服务器  80
                            HTTPS      443
                            FTP服务器  21
                ssh [-p port] user@remote
                    user 是在远程机器上的用户名,如果不指定的话默认为当前用户
                    remote是远程机器上的地址,可以是ip/域名,或者是别名
                    port是SSH Server监听的端口,如果不指定,就默认为22
                        ps:使用exit退出当前用户的登录
                        ssh这个终端命令只能在Linux或者UNIX系统下使用
                        如果在Windows系统中,可以安装PuTTY或者XShell客户端软件即可
                        putty下载: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
                        XShell下载: http://www.xshellcn.com/
                免密码登录
                    ps:有关SSH配置信息都保存在用户家目录下的.ssh目录下
                    配置公钥:执行ssh-keygen 即可生成SSH钥匙,一路回车即可
                    上传公钥到服务器:执行ssh-copy-id -p port user@remote让远程服务器记住我们的公钥
                配置别名
                    1、进入:cd ~/.ssh/
                    2、创建config文件:touch config
                    3、追加一下内容
                        Host 别名
                            HostName ip地址
                            User 用户名
                            Port 22
                    4、保存后,就可以用 ssh 别名 实现远程登录,scp同样可以使用别名(ssh 别名 = ssh -p port user@remote)
            scp
                secure copy  用来进行远程拷贝文件
                他的地址格式与SSH基本相同,需要注意的是,指定端口号时用的是大写的 -P而不是小写
                    ps:注意“:”后面的路径如果不是绝对路径,则以用户家目录作为参照路径
                        加上 -r 选项可以传送文件夹
                scp -P port test.py user@remote:Desktop/test.py  #把当前目录下的test.py文件复制到远程家目录下的桌面文件夹下

                scp -P port user@remote:Desktop/test.py test.py #把远程家目录下的桌面文件夹下test.py文件复制到当前目录下

                scp -r demo user@remote:Desktop  #把当前目录下的demo文件夹复制到远程家目录下的桌面文件夹下

                scp user@remote:Desktop demo #把远程家目录下的桌面文件夹复制到当前目录下的demo文件夹


    用户权限


        目标


            用户和权限的基本概念
            用户管理的终端命令
            组管理终端命令
            修改权限终端命令


        基本概念
            用户是Linux系统工作中重要的一环,用户管理包括用户与组管理
            在Linux系统中,不论是由本机或是远程登录系统,每个系统都必须拥有一个账号,并且对于不同的系统资源(文件、目录)拥有不同的使用权限
            对文件/目录的权限包括:
                权限     英文     缩写    数字代号
                读       read     r       4
                写       write    w       2
                执行     excute   x       1
                无权限            -       0

        组
            为了方便用户管理,提出了组的概念,如dev(开发组:张三、李四、王五)
            在实际应用中,可以预先针对组设置好权限,然后将不同的用户添加到队形的组中,从而不用依次为每一个用户设置权限

            组操作命令
                groupadd 组名  添加组
                groupdel 组名  删除组
                cat /etc/group 确认组信息
                chgrp -R 组名 文件/目录名   递归修改文件、目录的所属组
        ls -l 扩展
            ls -l 可以查看文件夹下文件的详细信息,从左到右依次是:
                权限       硬连接数      拥有者    组       大小          时间             名称
                -rwxrw-rw- 1             odoo      odoo     130816000     9月  30  2018    postgresql-10.3.tar
                drwxrwxrwx 2             odoo      odoo     4096 9月      29  2018         Public

                权限:第一个字符如果是d表示目录
                                   目录       拥有者权限         组权限       其他用户权限
                    文件权限示例: -          r  w  x            r  w  -      r  w  -
                    目录权限示例: d          r  w  x            r  w  x      r  w  x
                硬连接数:就是指有多少方式,可以访问到当前目录/文件
                拥有者:家目录下文件/目录的拥有者通常都是当前用户
                组:Linux中,很多时候,会出现组名和用户名相同的情况
        chmod 简单使用(重要)
            可以修改用户/组对文件/目录的权限
            命令:chmod +/-rwx  文件名/目录名

        用户管理终端命令
            命令                                           作用                           说明
            useradd -m -g 组 新建用户名                    添加新用户                      -m 自动建立用户家目录
                                                                                           -g 指定用户所在的组,否则会建立一个和用户名同名的组名
            passwd 用户名                                  设置用户密码                    如果是普通用户,直接用passwd可以修改自己的账户密码
            userdel -r 用户名                              删除用户                        -r选项会自动删除用户家目录
            cat /etc/passwd | grep 用户名                  确认用户信息                    新建用户后,用户信息会保存在/etc/passwd文件中
                ps:
                    创建用户时,如果忘记加-m选项指定用户的家目录,最简单的办法就是删除用户,重新创建
                    创建用户时,默认会建立一个和用户名同名的组名
                    用户信息会保存在/etc/passwd文件中
        查看用户信息
            命令              作用
            id 用户名          查看用户UID和GID信息
            who                查看当前所有登录的用户列表
            whoami             查看当前登录用户的账户名

            passwd 文件
                /etc/passwd 文件存放的是用户的信息,由6个分号组成的7个信息,分别是:
                odoo:x:1000:1000:odoo,,,:/home/odoo:/bin/bash
                zhangsan:x:1001:1001::/home/zhangsan:/bin/sh

                1、用户名
                2、密码(x,表示加密的密码)
                3、UID(用户标识)
                4、GID(组标识)
                5、用户全名或本地账号
                6、家目录
                7、登录使用的Shell,就是登陆后,使用的终端命令,ubuntu默认是dash

            usermod:用来设置用户的主组/附加组和登录Shell
                usermod -g 组 用户名  #修改用户的主组(passwd 中的GID)
                usermod -G 组 用户名  #修改用户的附加组
                usermod -s /bin/bash  #修改用户登录Shell
                主组:通常在新建用户时指定,在etc/passwd 的第4列GID对应的组
                附加组:在etc/group中最后一列表示改组的用户列表,用于指定用户的附加权限
                    ps:
                        设置了用户的附加组之后,需要重新登录才能生效
                        默认使用useradd添加的用户是没有权限使用sudo以root身份执行命令的,可以使用以下命令,将用户添加到sudo附加组中:usermod -G sudo 用户名

            which(重要):查看执行命令所在的位置
                which ls  #输出/bin/ls
                ps:
                    /etc/passwd 是用于保存用户信息的文件夹
                    /usr/bin/passwd 是用于修改用户密码的程序

            bin和sbin
                在Linux中,绝大多数可执行文件都保存在/bin、 /sbin、 /usr/bin、 /usr/sbin
                    /bin 是二进制执行文件目录,主要用于具体应用
                    /sbin 是系统管理员专用的二进制代码存放文件目录,主要用于系统管理
                    /usr/bin 后期安装的一些软件
                    /usr/sbin 超级用户的一些管理程序

            切换用户
                命令               作用                     说明
                su - 用户名        切换用户,并且切换目录   - 可以切换到用户家目录,否则保持位置不变
                exit               退出当前登录用户

                su 不接用户名,可以切换到root,但是不推荐使用,因为不安全

            修改文件权限
                命令      作用
                chown     修改拥有者
                chgrp     修改组
                chmod     修改权限
                chown 用户名 文件名|目录名 #修改文件|目录的拥有者
                chgrp -R 组名 文件名|目录名  #修改文件|目录的组
                chmod -R 755 文件名|目录名  #修改文件|目录的权限(-R递归修改目录权限)
                    ps:chmod 在设置权限时,可以简单地使用三个数字分别对应拥有者、组和其他用户的权限
                    拥有者               组                    其他
                    r  w  x              r  w  x               r  w  x
                    4  2  1              4  2  1              4  2  1


                    4  2  1     7       rwx    读、写、执行
                    4  2  0     6       rw-    读、写
                    4  0  1     5       r-x     读、执行
                    4  0  0     4       r--     读
                    0  2  1     3       -wx   写、执行
                    0  2  0     2       -w-   写
                    0  0  1     1       --x    执行
                    0  0  0     0       ---    无权限

                常见数字组合有(u 表示用户 /g 表示组 /o 表示其他):
                    777    ===>    u:rwx,g:rwx,o:rwx
                    755    ===>    u:rwx,g:r-x,o:r-x
                    644    ===>    u:rw-,g:r--,o:r--

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!