V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
solider245
V2EX  ›  Linux

Linux 可以不可以创建一个除了不叫 root 但是什么都和 root 一样的用户呢?

  •  
  •   solider245 · 2020-07-18 10:47:25 +08:00 · 6906 次点击
    这是一个创建于 1340 天前的主题,其中的信息可能已经有所发展或是发生改变。

    记得之前遇到过这种情况,感觉还是很方便的,但是隔了一段时间就忘记了。

    现在用的是建立一个系统管理员用户,然后免密码,需要提权的时候就输入sudo,虽然还是很方便,但是用起来还是有点麻烦。 我记得亚马逊之前好像就是有一个这样的用户。 网上搜索了一下,发现唯一的办法就是修改用户 id,把的他数字权限和用户组都改为0.0.虽然权限是一样了,但是一搜发现很多人改数字权限后遇到的问题几乎都想沿着网线去把写个主意的人吊起来打。

    不知道大家平时都是用什么办法来处理的呢?

    还是说和我一样,就是建一个系统用户然后免密码,需要提权的时候就sudo一下?

    34 条回复    2020-07-27 16:44:45 +08:00
    mikeguan
        1
    mikeguan  
       2020-07-18 10:50:47 +08:00 via Android   ❤️ 2
    那你说的这个用户他和 root 又有什么区别呢
    vk42
        2
    vk42  
       2020-07-18 10:51:52 +08:00
    现在 root 用户都提倡不用了,好奇 lz 有啥场景要那么多 root ?还嫌不够乱么
    LaTero
        3
    LaTero  
       2020-07-18 10:58:41 +08:00 via Android
    ”建一个系统用户然后免密码,需要提权的时候就 sudo 一下”
    没理解这样和直接 root 免密码有什么区别
    psyche
        4
    psyche  
       2020-07-18 10:58:56 +08:00   ❤️ 1
    重要的是 uid 0 吧,跟名字没关系
    solider245
        5
    solider245  
    OP
       2020-07-18 11:00:55 +08:00
    @LaTero 有区别啊,如果是 root 用户的话,就不需要输入 sudoL
    solider245
        6
    solider245  
    OP
       2020-07-18 11:01:49 +08:00
    @psyche 对的,看到网上很多人说如果出现了两个 uid0 的用户会引起混乱
    Jirajine
        7
    Jirajine  
       2020-07-18 11:01:51 +08:00 via Android
    root 只是 uid 为 0 的用户默认的名字,你把任意用户的 uid 改为 0/把 root 改为任意名字都完全不影响。
    solider245
        8
    solider245  
    OP
       2020-07-18 11:02:35 +08:00
    @mikeguan 你这么一说好像还真是,看来还是继续使用我这种免密码输入的方式好了
    solider245
        9
    solider245  
    OP
       2020-07-18 11:02:52 +08:00
    @vk42 有时候就是想方便一点而已
    vk42
        10
    vk42  
       2020-07-18 11:07:05 +08:00
    @solider245 sudo 虽然需要多输按几个键,但带来的权限分离是很重要的,没有这种权限分离意识的人用 root 用户就是一颗定时炸弹……
    raaaaaar
        11
    raaaaaar  
       2020-07-18 11:07:35 +08:00 via Android
    标识符只是为了便于人使用的,只要 uid = 0 就有所有权限,你想改的话,直接把 用户和用户组文件里把 root 改一下就行,Linux 对这些文件没什么限制,uid 相同的话,linux 其实也没有限制,都可以登录,权限都是一样的。
    raaaaaar
        12
    raaaaaar  
       2020-07-18 11:09:06 +08:00 via Android
    平时不要使用 root,这是权限管理的好习惯,而且有些软件是不允许 root 用户进行操作的,你弄着也麻烦。
    yazinnnn
        13
    yazinnnn  
       2020-07-18 11:29:14 +08:00
    你这真是需求有问题
    既然你都提权了,那就装个 zsh 的 sudo 插件呗,双击 esc 自动在开头加 sudo
    felixcode
        14
    felixcode  
       2020-07-18 11:33:34 +08:00 via Android
    我觉得自己手一抖可能就 rm -rf 了,所以坚持 sudo 加密码
    love
        15
    love  
       2020-07-18 12:56:40 +08:00 via Android
    不是每秒几十万上下的机子用 root 又怎么了,新建一个账号来管理服务器就是脱裤子放屁,该失手还是失手
    srlp
        16
    srlp  
       2020-07-18 12:57:46 +08:00 via iPhone
    看不懂,那么楼主为什么不直接用 root 账号?
    srlp
        17
    srlp  
       2020-07-18 13:00:14 +08:00 via iPhone
    此外,同样觉得楼主的需求很奇怪……权限分离是很重要的习惯
    jinliming2
        18
    jinliming2  
       2020-07-18 13:17:10 +08:00
    建这么一个账户,除了 uid 不是 0,其他和 root 完全一样,拥有所有权限。那么对于你这个用户来说,这个账户和 root 账户的区别在哪里?为啥要建这么个账号?如果是用这样的一个超级特权的账号,那么直接用 root 账号不行吗?
    难道只是因为“绝大多数情况下,不要使用 root”?所以就建一个和 root 几乎一样,但名字不叫 “root” 的账户来用?人家说的是“root”这个账户名吗?人家说的是超级管理员权限……

    现在的 sudo 是给你一个机会,仔细考虑一下,确定真的要执行这条指令。就类似于删除文件的时候要加个二次确认提示(现在很多发行版都这么做了,至少 root 权限的删除是会加二次确认的)。

    就是有人喜欢 sudo 里配 NOPASSWD ALL,相当于取消思考,sudo 就等于 su root 然后随便跑。这跟直接用 root 账户有啥区别? emmm,好吧,区别是这个要加一个 sudo 前缀,也算是象征性的“二次确认”了吧(前提是你日常没有 sudo 的权限,发现权限不足的时候思考一下再加 sudo )。

    日常使用,那是尽可能不提权,如果你日常 sudo 很频繁的话,想一想是不是自己的使用方式有问题?
    gugu33
        19
    gugu33  
       2020-07-18 13:58:39 +08:00 via iPhone
    你这是典型的 windows 个人用户思维,非常危险
    tomychen
        20
    tomychen  
       2020-07-18 14:00:20 +08:00
    uid 改成 0 就行了
    GrayXu
        21
    GrayXu  
       2020-07-18 14:30:42 +08:00 via Android
    可以,但没必要
    defunct9
        22
    defunct9  
       2020-07-18 14:31:52 +08:00 via iPhone
    唉。国内的什么金融检查还是什么,要求就是不能有 root 这个用户,建议改名。屁股长脑袋上了
    lookas2001
        23
    lookas2001  
       2020-07-18 15:17:26 +08:00
    很早之前写过一篇文章,不知道是否对楼主有所帮助 https://wudew.com/posts/63
    现在来看,不建议这么搞
    liuguang
        24
    liuguang  
       2020-07-18 16:33:48 +08:00
    ubuntu 不就是这样吗?
    solider245
        25
    solider245  
    OP
       2020-07-18 17:10:26 +08:00
    @lookas2001 感谢,原来是这个逻辑,明白了
    laydown
        26
    laydown  
       2020-07-18 17:14:08 +08:00
    吃太饱了吗,楼主,哈哈哈。
    imn1
        27
    imn1  
       2020-07-18 17:22:37 +08:00
    看 LZ 写的,我唯一想到的场景:
    禁止 root 登录,但这个账户可以登录,不知道的人尝试 root 登录失败,知道的人可以用这个账户登入获得全部权限

    数据管理有这样的场景,机器除了 windows,没怎么见过这样的场景
    ubuntu 好像是可以设定一个一般用户名作为管理员登入的(记错了?)
    winterbells
        28
    winterbells  
       2020-07-18 19:24:45 +08:00 via Android
    你就是想 sudo 免密码呗

    不推荐,脚本里带 sudo 也会直接执行
    abbottcn
        29
    abbottcn  
       2020-07-18 20:36:17 +08:00 via iPhone
    我的笨蛋用法是,ssh root 取得 root 权限,不用输入密码。
    systemcall
        30
    systemcall  
       2020-07-18 22:44:50 +08:00 via Android
    不清楚系统里面有 2 个不同的 root 会不会有问题
    嵌入式 Linux 里面,不少把 root 改叫 admin 的,比如许多无线路由
    yingfengi
        31
    yingfengi  
       2020-07-18 23:43:48 +08:00
    但是一搜发现很多人改数字权限后遇到的问题几乎都想沿着网线去把写个主意的人吊起来打。

    是的,想打死这种出馊主意的人,其他问题,中招过。。。关键是那个馊主意还被相对广泛传播了,好几个地方看到。。。
    enotx
        32
    enotx  
       2020-07-19 12:19:48 +08:00
    我猜你的需求,sudoer 里面设 NOPASSWD 就可以。但不建议不加 sudo,避免自己在无意识的情况下做出蠢事。就是楼上说的,权限分离意识很重要
    mageemeng
        33
    mageemeng  
       2020-07-19 16:02:07 +08:00
    本地环境限 sudo 麻烦不如直接用 root,线上环境免密 sudo 感觉是一个好办法,完全把 Linux 的权限理念抛弃了
    KentY
        34
    KentY  
       2020-07-27 16:44:45 +08:00   ❤️ 1
    "方便"跟"高安全级别"有时候是对立的. E.g. 你一台学生实验机器, root 就 root, 完全废了也没事. 所以
    - 如果出了问题, 也无关大碍, 没什么成本, 那就直接用 root, 别弄那么多复杂的
    - 如果有些问题担心发生, 趁早还是 sudo, 至少你知道哪些命令会要系统的权限
    - 在他的这个前提下, @LaTero root 跟 sudo 是有区别的因为 sudo 的权限可以在 visudo 配置, 比如你不让它 shutdown, 他 sudo 也没法 shutdown, 但是 root 是敞开的, 而且 root 可以修改 sudo
    当然 sudo 本身提供更多的选项以及灵活性, root 就是单一的一个用户, 只是权限大而已. 但这跟他提到的话题关系不紧密.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   4863 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 10:03 · PVG 18:03 · LAX 03:03 · JFK 06:03
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.