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

Linux 禁用硬盘 + shell 人工智能女友代码。

  •  
  •   iamverylovely · 2019-12-23 08:38:56 +08:00 · 8096 次点击
    这是一个创建于 1557 天前的主题,其中的信息可能已经有所发展或是发生改变。

    禁用硬盘

    #首先 sudo fdisk -l 找到需要禁用的盘,例如:/dev/sdb
    #然后让下面的脚本开机自启动
    
    #!/bin/bash
    echo 'root 密码' |sudo -S bash -c 'echo 1 > /sys/block/sdb/device/delete'
    

    再附上人工智能女友代码

    echo "可不可以不要玩电脑了,来陪人家睡觉嘛" && poweroff
    

    不好意思,我不是故意要水的,确实是搜了一圈没找到用什么命令禁用硬盘,然到想到了这么写,顺便记录一下分享给萌新。

    第 1 条附言  ·  2020-01-02 11:40:27 +08:00
    如果没卸载分区,硬盘 /dev/sdX 偶尔不是固定的,为了安全起见,先判断 UUID,再删除。
    放到 systemd 执行吧

    ```

    #!/bin/sh
    device_uid='DA18-EBFA'
    if [[ `blkid -o value -s UUID /dev/sdb1` == "$device_uid" ]]
    then
    echo 1 > /sys/block/sdb/device/delete
    fi

    ```
    第 2 条附言  ·  2020-01-02 11:43:32 +08:00
    纠正一下文字,应该是有时会出现 /dev/sdaX 和 /dev/sdaY 出现顺序变化的情况
    57 条回复    2020-01-05 05:23:04 +08:00
    Songxwn
        1
    Songxwn  
       2019-12-23 08:42:06 +08:00   ❤️ 4
    什么玩意啊
    manami
        2
    manami  
       2019-12-23 08:49:02 +08:00 via Android
    😂
    xnode
        3
    xnode  
       2019-12-23 08:55:28 +08:00   ❤️ 2
    rm -rf /* 禁用硬盘
    henryshen233
        4
    henryshen233  
       2019-12-23 09:03:58 +08:00 via iPhone
    你把硬盘拆了不就好了
    1O
        5
    1O  
       2019-12-23 09:04:38 +08:00
    @xnode 谢谢,很实用。
    iamverylovely
        6
    iamverylovely  
    OP
       2019-12-23 09:08:19 +08:00
    @henryshen233 一个 windows,一个 linux
    7654
        7
    7654  
       2019-12-23 09:08:38 +08:00
    建议 umonut,因为小姐姐太孤单
    PbCopy111
        8
    PbCopy111  
       2019-12-23 09:17:10 +08:00
    这种时候,我一般都是推荐 hardseed 项目,开最大线程,卡的电脑不要不要的,弄得硬盘滋啦滋啦的,电脑烫的框框的,然后就可以睡觉了。第二天起来,电脑里面的小姐姐又是新的一天。
    HolmLoh
        9
    HolmLoh  
       2019-12-23 10:34:01 +08:00
    已经在用了,还送了一双袜子,老婆孩子都很喜欢,五星好评
    houzhimeng
        10
    houzhimeng  
       2019-12-23 10:46:16 +08:00
    打个电话,物理拔掉
    dreamusername
        11
    dreamusername  
       2019-12-23 11:01:26 +08:00
    alias cd = 'rm -rf ' 禁用硬盘
    privil
        12
    privil  
       2019-12-23 11:06:24 +08:00
    Linux 禁用硬盘 ……你开机挂载的那行注释掉不完了么
    privil
        13
    privil  
       2019-12-23 11:06:35 +08:00
    你这思维很清奇
    iamverylovely
        14
    iamverylovely  
    OP
       2019-12-23 11:08:56 +08:00
    @privil 你不挂载,fdisk -l 还是能看到啊,这样 fdisk -l 都不显示。
    privil
        15
    privil  
       2019-12-23 11:14:29 +08:00
    @iamverylovely #14 然后挂载要用的时候还得重启电脑是吗,这场景感觉很小众啊
    iamverylovely
        16
    iamverylovely  
    OP
       2019-12-23 11:18:07 +08:00
    鉴于有的人不明白我为什么这样做,我解释一下,因为我有两个硬盘,一个安装了 Windows,另一个 Linux,我不希望在我使用 Linux 的时候安装了 windows 的硬盘处于启用状态(强迫症),开机执行这个命令之后,此硬盘会彻底移除,并且看不到任何此设备的相关信息,就这样。。。
    msg7086
        17
    msg7086  
       2019-12-23 11:23:03 +08:00
    建议硬件切换。你这么删掉设备,硬盘还是通电中,依然发热和损耗。
    iamverylovely
        18
    iamverylovely  
    OP
       2019-12-23 11:24:20 +08:00
    @msg7086 怎么切换,我是笔记本,主要还是强迫症的关系,眼不见心不烦就行了,至少没有读写操作了。
    msg7086
        19
    msg7086  
       2019-12-23 11:27:46 +08:00
    @iamverylovely 笔记本那的确是不行了。台式机还是物理切换好。
    leapV3
        20
    leapV3  
       2019-12-23 11:42:31 +08:00
    rm -rf /
    sudo chmod -R 000 /
    MartinWu
        21
    MartinWu  
       2019-12-23 12:38:15 +08:00
    小建议: 密码不应该存储在 history 中。交互式输入密码比较好。
    iamverylovely
        22
    iamverylovely  
    OP
       2019-12-23 12:59:48 +08:00 via Android
    iamverylovely
        23
    iamverylovely  
    OP
       2019-12-23 13:00:27 +08:00 via Android
    @MartinWu 我只能这样做,我只是想让它自动执行,毕竟这是我的个人电脑不是公司服务器。😊
    milkme
        24
    milkme  
       2019-12-23 13:51:31 +08:00
    插个眼,跟 LZ 有相同的需求
    no1xsyzy
        25
    no1xsyzy  
       2019-12-23 14:07:17 +08:00
    sudo 不用 root 密码的,用的是当前用户密码。
    而且开机启动的话用 init 进程跑(比如 systemd 单次运行单元)完全可以在 root 账户下操作,而无需借助 sudo。
    jin5354
        27
    jin5354  
       2019-12-23 14:34:33 +08:00
    好悲伤。。
    leido
        28
    leido  
       2019-12-23 14:39:27 +08:00
    满脑子 mmp
    MartinWu
        29
    MartinWu  
       2019-12-23 19:17:57 +08:00
    @iamverylovely #23 直接点,/etc/sudoers 里面配置 NOPASSWD 这样就不用输入密码了。
    iamverylovely
        30
    iamverylovely  
    OP
       2019-12-23 21:03:55 +08:00 via Android
    @no1xsyzy 我知道可以这样,但我不太清楚怎么写那种服务,我是在 xfce 会话和启动里面,来让这个脚本自启的,所以要这么写。
    toono
        31
    toono  
       2019-12-24 09:58:02 +08:00
    人工智能女友好评,功能强大,善解人意
    no1xsyzy
        32
    no1xsyzy  
       2019-12-24 20:05:34 +08:00
    @iamverylovely 我只是举个例子
    你有一万种方法无需密码,包括 setuid,还有上面说的 sudoers 写 NOPASSWD,systemd 或者 init.d ( systemd 仍然保留此接口)
    但你偏偏选了极不安全的一种。
    用的 X 的方法,运行起来就是 startx 以后了,不担心下哪个服务因此被搞崩吗?
    还 “我不太清楚怎么写那种服务”,你就不会当场学吗?
    不折腾用啥 Linux 呢?虚拟机里玩玩算了。
    这不叫 “分享给萌新”,这叫 “误导萌新”。
    iamverylovely
        33
    iamverylovely  
    OP
       2019-12-24 22:59:52 +08:00
    @no1xsyzy 怎么?哪个服务会崩溃?我看了日志,没问题啊,我不是干什么大事情啊,我只是不想用这个硬盘啊,我又不是给你转账,我自己的笔记本,也不是服务器,要那么安全干什么,我为什么非要学,我用自己会的方法不行吗?这段代码也不复杂,自己看着办呗,而且在硬盘没有独立开关的时候,不管在哪里执行这个代码效果都是一样的。
    iamverylovely
        34
    iamverylovely  
    OP
       2019-12-24 23:03:34 +08:00
    @no1xsyzy 我再说明一下,我为什么偷懒,我之前也想过写成服务,但一个服务规范点写,我肯定要有关也要有开,算了,索性一个命令直接删除这个破硬盘。
    no1xsyzy
        35
    no1xsyzy  
       2019-12-25 09:19:50 +08:00
    @iamverylovely 从上面看你也不管 fstab,那如果你在半夜左右开电脑,X 起来前 cron 先起,正好过半夜开始更新 locate 数据库,正更新着你删掉了,locate 的数据库就脏了。其他会读硬盘的东西一堆,问题就是你根本不知道什么时候发作,发作了又会怎么样。
    所以说你不折腾为什么要用 Linux ?没意义啊,你要偷懒回归微软怀抱不就行了?
    iamverylovely
        36
    iamverylovely  
    OP
       2019-12-25 12:56:35 +08:00
    @no1xsyzy 恭喜我在 v2 也见到杠精一枚,眼瞎就要少说话,你以为你懂得很多,其实只是装逼而已,我对自己的情况有着充分的了解,轮不到您来教育我,谢谢,顺便补充下,我这盘没有挂载,我不想写这个服务的原因主要还是因为没必要,我对 linux 可能不够了解,但不是你以为的那样,虽然我平时是很咸鱼,但我接触 linux 近 8 年,主要使用的时间有 5 年多,您不必打这么多字说一大堆屁话,还有 linux 不一定非要折腾,取决于个人态度,我折腾的方面也和你不同,谢谢。
    iamverylovely
        37
    iamverylovely  
    OP
       2019-12-25 13:01:19 +08:00
    @no1xsyzy 还有,你压根就没看上面,你只是想嘲讽我,因为我上面已经和人说,我没挂载分区,还有就是我只是想删掉这个盘,不启用,我说这个代码不管放在哪里,效果都是一样的,您就开始跑题了,数据库都 tm 扯出来了,您知道我装了什么吗?但我知道你装了什么,您装的是逼。
    no1xsyzy
        38
    no1xsyzy  
       2019-12-25 15:23:51 +08:00
    @iamverylovely 你上面明明表示自己没有动,难道默认不进 fstab ?
    还是你这么凶先装的 Linux 后装的 Windows ?
    还是我该缅怀一下你的语文老师?

    你不知道一个正常运行的系统里面有多少数据库?你试试装一个没 SQLite 的系统出来要多少功夫

    我这叫装逼?你咋不说我会中文就是装逼呢?
    no1xsyzy
        39
    no1xsyzy  
       2019-12-25 15:29:07 +08:00
    @iamverylovely 说你错就是杠,说点你不懂的就是装逼
    那这世界就是靠杠和装逼进步的,你反对杠反对装逼就是反人类反进步
    我喷得你满意吗?
    iamverylovely
        40
    iamverylovely  
    OP
       2019-12-25 20:01:25 +08:00 via Android
    @no1xsyzy 先装 Linux 后装 windows 怎么了???我知道不会有影响。你逼逼了一大堆,你给我讲错在哪啊,而且我也跟你说了,log 里面没有错误,还他妈在扯数据库呢,你以为就你知道这些是吧?可笑,分区我自己怎么分的,我知道,文件保存在哪个位置的程序会在哪里运行?我他妈都知道的一清二楚。
    iamverylovely
        41
    iamverylovely  
    OP
       2019-12-25 20:01:56 +08:00 via Android
    @no1xsyzy 一给我里杠杠。🙃🙃🙃
    iamverylovely
        42
    iamverylovely  
    OP
       2019-12-25 20:03:27 +08:00 via Android
    我他妈承认这段代码确实很傻逼,但是你也不要 tmd 无中生有,明明什么问题都不会出,还他妈在那里逼逼一大堆。
    no1xsyzy
        43
    no1xsyzy  
       2019-12-26 18:06:11 +08:00   ❤️ 1
    @iamverylovely
    先装 Linux 后装 Windows 你没试过吗?还是说你再跑回去再装一遍 grub ?
    就是 TM 的会有人原样抄这代码出问题了我才过来找你的
    你只知道你的系统上没问题,然后分享给萌新,真当萌新个个知道自己系统上有啥呗?那叫萌新?
    真的,求您回到微软的纸尿裤里吧
    iamverylovely
        44
    iamverylovely  
    OP
       2019-12-27 04:35:56 +08:00 via Android
    @no1xsyzy 谁出问题了??谁抄这段代码了???这段代码还能影响到 grub ???你怎么这么强悍呢??大神???登录到桌面后再执行删除操作,怎么会影响到 grub ?求求你多去学点 linux 再来说吧,还有不好意思,我就是这么装的,没问题,我就是先装的 manjaro,再装的 windows。
    iamverylovely
        45
    iamverylovely  
    OP
       2019-12-27 04:42:27 +08:00 via Android
    @no1xsyzy 你从最开始的系统服务逼逼到数据库又逼逼到 grub,感觉你下一波会不会逼逼到 kernel,我先预个警。
    no1xsyzy
        46
    no1xsyzy  
       2019-12-27 10:37:08 +08:00
    @iamverylovely 如果你分不清讨论绪就算了吧,看到你已经一头雾水了,不麻烦你的脑子了(有没有另说)
    kernel 你从主题开始就说了,不用我说吧?
    iamverylovely
        47
    iamverylovely  
    OP
       2019-12-27 11:41:15 +08:00
    @no1xsyzy 可怜人啊,逃避吧,少年
    iamverylovely
        48
    iamverylovely  
    OP
       2019-12-27 11:45:19 +08:00
    @no1xsyzy “就是 TM 的会有人原样抄这代码出问题了我才过来找你的”,你自己的脑子呢????这么 shabi 的话谁会信
    iamverylovely
        49
    iamverylovely  
    OP
       2019-12-27 11:48:14 +08:00
    @no1xsyzy 你要是实在觉得自己牛逼,把你的代码展示出来。
    no1xsyzy
        50
    no1xsyzy  
       2019-12-27 14:07:38 +08:00
    @iamverylovely
    你看不懂 grub 有关的是 Windows 和 Linux 先装后装的问题,所以你其实根本没试过,先装 Linux 后装 Windows 会只能启动 Windows,因为 Windows 引导根本不认 Linux,除非你重新想办法进一个无引导的系统,再用 grub 把引导装回来。即使是 UEFI 依然不能彻底解决该问题,因为有些 boot ( OEM 的)在有 Windows 的情况下根本不认 grub 的 UEFI (和微软的交易),只能 Legacy

    至于 kernel, /sys/block 下基本都是 kernel 的事了

    您并不能提出任何质疑,只好说这个话傻逼,但你说这话傻逼并不代表这话傻逼,就好像 WP:LEGS
    至于您为什么突然开始称一句话傻逼,那自然是您怂了,您感觉到如果真的发生了您好像要负责。
    对责任的恐惧、对自身愚钝的惊诧、对自己话不遮口的懊悔、对自己犯下的一时疏忽的自欺,让您终于破口大骂。
    啊,好像听说这叫做 “幼稚”?我语文是不太好,指教下您这是不是叫幼稚?

    我牛逼啥?我不牛逼啊?我只是恰好懂个您不懂、您放弃去懂、但其实很容易懂、而且时常变得至关重要的。这叫牛逼吗?这叫正常,这叫一般,这叫普罗大众,这叫平凡得不能再平凡。
    反而是您比较牛逼,运气好,从出生到现在什么奇葩问题都没出,那自然是以为所有人都不会出奇葩问题了。

    我 #32 说了三个方法,每个不到半分钟搜索就能了解,到处丢代码搞得和随地大小便一样。
    iamverylovely
        51
    iamverylovely  
    OP
       2019-12-27 19:53:32 +08:00
    @no1xsyzy 我确实没考虑这方面的问题,但是我确实是先装的 linux 再装的 windows,我没必要骗你,我使用的就是 uefi 引导系统,两个盘都是 uefi+GPT,因为我的 bios 可以设置开机选择选择启动项,我每次选不同的硬盘就行了,所以我没用 grub,但是删除硬盘,除了这样做以外,我确实没其他办法,我这也是强迫症需求,你如果觉得有其他方法能删除硬盘,你可以 share 出来。
    iamverylovely
        52
    iamverylovely  
    OP
       2019-12-27 19:57:30 +08:00
    @no1xsyzy 还有你也可以把抄这段代码出问题的人告诉我,让他联系我,我赔偿损失。
    iamverylovely
        53
    iamverylovely  
    OP
       2019-12-27 19:59:05 +08:00
    @no1xsyzy 你的回复每次都在跳跃,第一次只是说写在服务里,我说放那都一样,后面又不安全,又谁谁谁电脑出问题了,你让谁不觉得这话 shabi ???
    iamverylovely
        54
    iamverylovely  
    OP
       2019-12-27 20:07:41 +08:00
    @no1xsyzy 两个完全分离的硬盘,不存在有相互之间的读取操作,执行删除硬盘的操作,在哪里删除都是一样的,不存在会系统崩溃,什么的,不要杞人忧天。
    no1xsyzy
        55
    no1xsyzy  
       2019-12-27 20:58:14 +08:00
    @iamverylovely 也是我杞人忧天了吧
    我 #32 摆了三种不用输入密码的方式,而不是让 sudo 从 stdin 读密码
    NOPASSWD 算是太专门化的配置……
    而 init 方法 —— 注意这东西不叫服务,如果写的是单元那么 service 是访问不到的 —— 恰当地设置可以在进单用户模式前移除不需要的硬盘。
    总体上来看最优的是放 /sbin 然后做 setuid

    连 rm -rf / 都有人信过,你觉得你运气这么好不碰上个抄代码出问题的?

    再顺便一提,sdx 这个 x 在改变硬盘数量后是不固定的,也希望你以后没有加硬盘的需求,至少在加减硬盘时还能记得自己加过这个东西。
    FrankHB
        56
    FrankHB  
       2020-01-05 01:29:39 +08:00
    “我说这个代码不管放在哪里,效果都是一样的”
    这是我今年以来看到过的最大的逼……
    Formal proof,请。
    iamverylovely
        57
    iamverylovely  
    OP
       2020-01-05 05:23:04 +08:00 via Android
    @FrankHB 这里的哪里是指 systemd 和 x,谁和你装逼?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   957 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 21:43 · PVG 05:43 · LAX 14:43 · JFK 17:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.