标签列表

everest33

自制力

导航

ubuntu / Centos平时记录

※,平时记录(及问题排查)

  • lsb_release -a // 查看系统版本
  • Ubuntu系统的默认防火墙系统是ufw(参考:在Ubuntu 18.04系统中使用UFW设置防火墙),但是可以安装和使用Firewalld.
  • ubuntu 20.04桌面版进入Rescue 模式(又叫Single User Mode)
    • rescue mode会启动少量服务(service),而紧急模式(Mergency Mode)只是一个raw shell,什么服务都不启动
    • 重启ubuntu系统,等待出现grub菜单(不出现的话开机过程中需要长按shift),选择ubuntu高级选项,选中菜单中的带有rescue mode的一个条目,按e编辑此条目grub参数,找到linux开头的一行,然后将 ro recovery nomodeset删除,在此行的最结尾添加:`rw single init=/bin/bash`。注意这里一个坑,一定是要在此行最结尾添加这行代码,否则启动不了(原因是init=后面的所有值在一起都会被当做路径)!

※,重装系统:

  • 【最佳实践】 装系统的磁盘最好分成系统分区和数据分区,这样重装系统不会丢失数据分区的数据!
  • ubuntu20.04 desktop镜像安装系统时,有个菜单选项叫safe graphics,用这个选项实验了下,进去后桌面的分辨率比正常的要低,其他没啥区别,可能是没加载显卡驱动之类的?
  • 两个磁盘(SSD系统,HDD数据)的机器重装系统,选择卸载并重装,安装完成后HDD数据还在,SSD中的数据消失。以后可以将SSD也分成两个区,一个装系统,另一个用来为下一次重装系统做准备,这样原始的系统的数据也不会丢!
  • 重装系统后,原来的磁盘/dev/sda上安装的lvm没有做任何操作,此时重新挂载时不能使用/dev/sda挂载,可以使用逻辑卷路径挂载

    • mount /dev/sda1 /data1 //报错:未知的文件系统类型“LVM2_member”
    • mount /dev/vg0/lv0 data1 // 正常

※,系统安装过程(Dell PowerEdge R740, BIOS 2.12.2, ubuntu-20.0.4-live-server版本)

  • iso镜像下载地址:点此
  • 安装过程中,可以ctl +z 或 F2命令 进入shell界面,可以进行一些操作,比如下面讲的磁盘分区,路由规则改写等
  • ubuntu-20.04.4目前为止没有离线安装镜像,只有ubuntu-20.04.4-live-server-amd64.iso(多了个live),live代表安装过程中需要网络
    • 】服务器双网卡,一个内网一个外网,网口1是默认启动网卡,插的是内网网线(连接到内网交换机上)。公司的内网环境下想连接外网是需要认证的,于是踩了一个坑,20.04-live-server版本安装过程中总是提示配置的http://mirrors.aliyun.com/ubuntu源无法连接!其实日志中已经提示了:does the network need authentication? 只是没有意识到是这个问题,习惯性的忽略了。还有一个现象是安装时ctrl+z进入shell中,使用wget镜像中的某个文件是可以下载下来的!【解决方法很简单】这个问题的本质原因是默认网卡是内网,也就是默认的路由是内网网卡的网关,只要把这个内网网卡的默认路由删除就可以了!当然拔掉内网网线也是可以的。
  •  
  • 安装界面,按 e 可以编辑grub引导参数
  •  grub2:
    • quiet 意思是内核启动时候简化提示信息
    • splash 意思是启动的时候使用图形化的进度条代替init的字符输出过程
    • nomodeset 先部加载显卡驱动,出现花屏问题可以采用此参数
  • 安装过程中,ubuntu系统镜像本身的镜像源(http://cn.archive.ubuntu.com/ubuntu) 可以替换为阿里云(https://mirrors.aliyun.com/ubuntu/),http或https皆可。
  • 磁盘旧分区删除:服务器原来装的是centos7.9版本,因为内核版本(3.10)过低,k8s要求内核版本要在4.x。在升级内核和采用ubuntu之间选择了采用ubuntu Server
    • 】安装过程中又报错.无法清除以前的存储。于是只能自己手动清除。
      • `fdisk /dev/sda` // 开始使用fdisk命令操作/dev/sda,数据无价,高危!fdisk命令在使用w之前都是保存在内存中的,按了w就保存在磁盘中了!
      • 按·p·打印/dev/sda的分区别
      • 按`d`删除一个分区
      • 按·w·保存修改后的分区 // 慎重!
      • 按·q·放弃修改退出
  • Linux下 机械硬盘HDD与固态硬盘SSD的区分
    • `lsblk -o name,rota` // 注意name和rota之间不能用空格... rota 为0表示不旋转即固态盘,为1表示旋转即机械盘
  • 磁盘分区规划:服务器有两块磁盘,2T的HDD(sda),1T的SSD(sdb)。初步规划:SSD用于安装系统,HDD用于保存数据. lsblk -f  / fdisk -l / blkid
    • SSD
      • Filesystem               Size  Used Avail Use% Mounted on
      • /dev/sdb2                2.0G  113M  1.7G   7% /boot   # ext4  注意/boot最好不要xfs文件系统
      • /dev/sdb1                1.1G  5.3M  1.1G   1% /boot/efi # vfat
      • /dev/sdb3                891G   17G  874G   2% / # xfs
    • HDD: 采用LVM逻辑卷的方式,将整个HDD(sda)作为PV,将此PV组成VG(名称为ubuntu),然后将此VG的100%空间用作一个LV(名称为data),挂载在/data1目录下。
      • Filesystem                             Size  Used Avail Use% Mounted on
      • /dev/mapper/ubuntu-data  2.2T   16G  2.2T   1% /data1 # xfs。lvm创建的逻辑卷默认名称是/dev/mapper/<vgname>-<lvname>
    • 【注意】第一台机器安装系统时只创建了vg(名为vg0),没有创建lv,安装完成后手动创建了一个lv(名为lv0, 创建命令·lvcreate -l 100%FREE -n lv0 vg0·),然后用xfs文件系统格式化·mkfs.xfs /dev/vg0/lv0·,然后将此lv挂载到/data1目录下(`mount /dev/vg0/lv0 /data1/`)。
      • /dev/mapper/vg0-lv0  2.2T   16G  2.2T   1% /data1
      • 此时还需要注意,mount挂载只是临时挂载,重启系统的话就消失了,所以需要在/etc/fstab中添加永久挂载。仿照其他几台机器的格式,添加如下内容:
        查看代码
        # /etc/fstab: static file system information.
        # 
        # Use 'blkid' to print the universally unique identifier for a
        # device; this may be used with UUID= as a more robust way to name devices
        # that works even if disks are added and removed. See fstab(5).
        #
        # <file system> <mount point>   <type>  <options>       <dump>  <pass>
        # / was on /dev/sdb3 during curtin installation
        /dev/disk/by-uuid/951f96ea-4b2c-4dad-8e8f-a7dd7ebf4c56 / xfs defaults 0 1
        # /data1 was on /dev/vg0/lv0 during curtin installation
        # 下面是新增的lv挂载信息,uuid是vgUUID+lvUUID,但是要去除短横线。可以分别用vgdisplay和lvdisplay查看
        /dev/disk/by-id/dm-uuid-LVM-22j8qcN8DXaayV4m10ru3J5pcj2HbkrlUWqiQSZiBI51eJVBFA6SC76CsKJjhI2L /data1 xfs defaults 0 1
        # /boot was on /dev/sdb2 during curtin installation
        /dev/disk/by-uuid/64b944a6-4c74-4e67-a68b-59f4a50dbfb2 /boot xfs defaults 0 1
        # /boot/efi was on /dev/sdb1 during curtin installation
        /dev/disk/by-uuid/3F19-160E /boot/efi vfat defaults 0 1
        /swap.img       none    swap    sw      0       0
      • 添加后执行`sudo mount -a` 立即加载/etc/fstab中提到的磁盘。

※,刚安装后

  • 初次登陆需设定root密码:·sudo passwd [root]·
  • ssh 远程登录
    • 刚安装完系统后默认情况下,使用 远程连接工具是无法以 root 用户登录的,需要设置一下配置文件·/etc/ssh/sshd_config·,添加一行`PermitRootLogin yes`,然后重启ssh服务`systemctl restart ssh`即可。
      • `echo PermitRootLogin yes >>/etc/ssh/sshd_config` 
  • =========网络 netplan / NetworkManager ================
  • 静态IP配置:ubuntu 20.04使用netplan管理网络
    • ·man netplan· 查看具体配置项及说明
    • ·netplan apply· 生效
  • 双网卡配置:默认是内网网卡,路由也是内网网卡的默认路由,内网网卡的环境下外网访问是受限制的(公司层面做了限制,需要认证才能上外网),比如apt install net-tools会报错,无法连接软件源。(但是奇怪:ping或wget(http)是可以的)。所以需要做如下配置:
    • 将外网网卡(此网卡是直接电信接入,和家里的宽带一样没有限制)的路由设置成默认的,这样外网访问将不会受到任何限制。但是问题是:连接在内网上的其他机器无法和此服务器连接,比如我的机器ip:192.168.35.xxx无法和服务器192.168.67.xxx通过ssh远程连接, 包可以到达服务器,但是服务器不知道怎么回包,所以还需要配置一下服务器的路由表,添加192.168.0.0/24网段的路由,网关设置为内网网卡的网关192.168.67.254。
    • ubuntu20.04LTS,/etc/netplan目录下的文件 ·00-installer-config.yaml·内容设置如下:(另一个文件是·01-network-manager-all.yaml·)
    • # This is the network config written by 'subiquity'
      network:
        ethernets:
          eno1: #这个是公司的内网网卡,插在了默认口上。如果网线交换一下位置,那么外网网卡将会是默认网卡。
            dhcp4: false
            dhcp6: false
            addresses: [192.168.67.25/24]
            # 通过 man netplan查看文档可知,gateway4已经废弃了,推荐使用default route。另外在dhcp4为true时不添加gateway4也会产生一条默认路由
            # 但是和gateway4产生的默认路由的metric不同。
            # gateway4: 192.168.67.254 # gateway4字段设置此网卡的默认路由,也就是default路由。
            routes:
            # 配置一条192.168.0.0/16的路由
            - to: 192.168.0.0/16
              via: 192.168.67.254
              metric: 0
            nameservers:
              addresses: [192.168.0.223, 192.168.0.222]
          eno2: #这个是外网网卡
            dhcp4: true
            # dhcp4设置为true会产生一条metric为100的默认路由。如果不想让这个网卡产生这个默认路由可以使用dhcp4-overrides的use-routes属性
            # 设置后此网卡便不会产生默认路由。由用户负责添加静态路由。
            #dhcp4-overrides:
              #use-routes: false
          eno3:
            dhcp4: true
          eno4:
            dhcp4: true
        version: 2
  • ubuntu20.04桌面版的网络管理:桌面版有两个管理网络的工具:NetworkManager 和 netplan,两者不能共存。当使用netplan管理时,NetworkManager不起作用。推荐使用NetworkManager。
    • 案例:IT中心绑定一个IP给一个机器,但是使用netplan apply设置dhcp4自动获取的是另外一个IP,即使ip link set <ifname> down再up依然如此。然后使用NetworkManager自动获取,获取的就是IT中心绑定的IP。
    • 桌面版右上角网络管理里,显示“未托管”。原因是之前修改了netplan的配置文件,使用了netplan来管理网络。解决方法:
      • 方法一:未验证。将/etc/netplan/01-network-manager-all.yaml文件恢复为初始化的内容,即
        [root@sungrow27 ~]$cat /etc/netplan/01-network-manager-all.yaml
        # Let NetworkManager manage all devices on this system
        network:
          version: 2
          renderer: NetworkManager
      • 方法二:参考此文
        1. vim /etc/NetworkManager/NetworkManager.conf,将managed改为true
          [ifupdown]
          managed=true
        2. 查看NetworkManager的配置
          ·sudo NetworkManager --print-config·
          里面有一项内容,显示NetworkManager管理的设备情况
          [keyfile]
          unmanaged-devices=*,except:type:wifi,except:type:wwan
          这个时候我的配置文件里是没有有线网卡的,只有无线设备
          下面修改这个文件
          sudo vim /usr/lib/NetworkManager/conf.d/10-globally-managed-devices.conf
          添加except:type:ethernet 如下所示:
          [keyfile]
          unmanaged-devices=*,except:type:ethernet,except:type:wifi,except:type:wwan
          保存后重启NetworkManager,搞定

apt专题

  • 配置源/etc/apt/sources.list
  • 包管理相关:(apt, dpkg等)apt 命令是 apt-get、apt-cache 和 apt-config 中最常用命令选项的集合。如果想查看具体的参数(比如 -s / --simulate)还是需要`man  apt-get`.
    • apt一般用法参考此文.
      • apt-get update //这个命令只是从配置源下载包的索引文件,不会对包做什么动作,所以可以放心使用
      • apt -s install <package-name> //-s 选项代表 模拟。它只是模拟执行,好让你知道在安装 <package> 时会发生什么。apt 也可用apt-get 替换。
      • apt -s upgrade <package-name> // 同上,模拟升级<package-name>时会发生什么
    • apt查看某个包的所有版本:
      • 官网包搜索
      • apt-cache madison <pkg-name>
      • apt show <package-name>
      • apt policy <pkg-name> // or  apt-cache policy <pkg_name>
      • apt-cache showpkg <package-name>
    • 查看某个包是否已安装以及一些信息: 参考此文
      • ---------------------apt-----------
      • apt list <pattern> //Ubuntu 14.04及以上版本。列出符合pattern的所有包
        • apt list *mysql*
        • apt list --installed// 列出所有已安装的包
        • apt list *mysql* --installed
      • ------------使用dpkg查询包信息(Ubuntu下用dpkg查询信息更好用一些,把dpkg当做Ubuntu下的 rpm 即可!)---------------
      • 【★注意★】pkg-name是软件包的报名,deb-name是软件包文件的文件名,两者不一样!
      • dpkg -l <pattern> //列出符合pattern的包,ii表示已安装,un表示未安装。
        • dpkg -l *mysql* //列出包含mysql关键字的包。注意一点,*mysql*会先展开,比如如果执行此命令的目录下含有mysqldump文件,那么这个命令实际最终就是 dpkg -l mysqldump! 所以需要在不含有mysql字样的目录下执行此pattern才能得到想要的效果。
        • dpkg -l |grep mysql
        • dpkg -l|egrep mysql\|mariadb
        • dpkg -l |grep linux-image
      • dpkg-query -l <pkg-name> // 类似dpkg -l命令。可以使用通配符! 找不到或者列表前面带有 un 字样的代表没有安装,列表前面带有 ii 字样的代表已安装。
      • dpkg -s <pkg-name> // -s即--status,报告某个包的状态。这个只能查看已安装包的信息
      • dpkg --get-selections// 查看系统中安装的所有包。配合grep好用!
        • dpkg --get-selections |grep linux-image
      • dpkg --search <absolute-path> // 查找某个特定文件属于哪个软件包。注意:必须使用绝对路径
      • dpkg -L <pkg-name>// “-L”参数列出软件pkg-name安装后有哪些文件。or:  显示和特定某个软件包相关的所有文件的列表。
      • --------dpkg的其他命令---------
      • dpkg -i <deb-name1> <deb-name2>... // 安装deb包,可以同时安装多个。
      • dpkg -P <pkg-name1> <pkg-name2>... // 卸载pkg-name1,pkg-name2...
      • -------deb包信息的查询:dpkg-deb 命令-------
      • dpkg-deb --help
      • dpkg-deb --info <deb-name> //查询deb包的信息,包含包对应的软件的软件名,即卸载时指定的pkg-name。
      • dpkg-deb -c <deb-name> //查询deb包里包含哪些文件
      • ------ dpkg元数据文件--------------
      • vim /var/lib/dpkg/status
      • vim  /var/lib/dpkg/info/squid3.list
    • 查看某个命令属于哪个包:
      • dpkg -S $(which command_name)
      • apt-file //一般用dpkg -S即可满足需求,不用单独安装apt-file
        • apt install apt-file
        • apt-file update //时间较久
        • apt-file search $(which command_name)// 这里查询出来的结果很多,实际就是能正则匹配所给路径的所有软件包!
      • ★,一个例子:ip命令属于iproute2包,但是用dpkg -S $(which ip) apt-file search $(which ip)查不出来,原因如下:which ip输出的是/usr/sbin/ip但是这个不是真实的路径而是一个软连接,实际指向的是 /usr/sbin/ip -> /bin/ip*,所以需要使用 dpkg -S /bin/ipapt-file search /bin/ip 来查询,如下:
        (base) root@server53:~# dpkg -S /bin/ip
        iproute2: /bin/ip
        (base) root@server53:~# apt-file search /bin/ip |grep /bin/ip$
        iproute2: /bin/ip
        (base) root@server53:~# 
    • aptitude包管理系统: aptitude工具本质上是apt工具和 dpkg 的前端。 dpkg 是软件包管理系统工具,而aptitude则是完整的软件包管理系统。
      • aptitude versions <package-name> 
      • aptitude show <package-name> // 查看某个安装包的详细信息,包含是否已安装信息。aptitude show和aptitude search都可以查看某个包是否已安装。
      • aptitude search <keyword> -F "%c %p %d %V" // 这个命令可以查找包含关键词的所有包,当你不知道完整的软件包名称时,这非常有用,-F参数指定输出格式。
        • %c: 包的状态
          • p:说明这个包可用(在软件仓库中),但还没安装,在本机上无一点痕迹
          • i:说明这个包现在已经安装到了你的系统上
          • c:意味着软件已删除,但是配置文件尚未从系统中删除
          • v:意味着这个软件包是虚拟的
        • %p:包名
        • %d:包简介
        • %V:包版本
      • 用aptitude卸载软件

        • aptitude remove <package-name> // 只删除软件包而不删除数据和配置文件。
        • aptitude purge <package-name> // 删除软件包和相关的数据和配置文件。
        • 要看软件包是否已删除,可以再用 aptitude 的 search 选项。如果在软件包名称的前面看到一个 c ,意味着软件已删除,但配置文件尚未从系统中清除;如果前面是个 p 的话,说明配置文件也已删除。
      • aptitude 仓库:  aptitude 默认的软件仓库位置是在安装Linux发行版时设置的。具体位置存储在文件·/etc/apt/sources. list·中。Linux发行版的开发人员下了大工夫,以保证添加到软件仓库的包版本不会互相冲突。通常通过库来升级或安装软件包是最安全的。即使在其他地方有更新的版本,也应该等到该版本出现在你的Linux发行版仓库中的时候再安装。使用下面的结构来指定仓库源: ·deb (or deb-src) address distribution_name package_type_list·

        • deb 或 deb-src 的值表明了软件包的类型。 deb 值说明这是一个已编译程序源,而 deb-src值则说明这是一个源代码的源
        • address 条目是软件仓库的Web地址。
        • distribution_name 条目是这个特定软件仓库的发行版版本的名称。
        • package_type_list 条目可能并不止一个词,它还表明仓库里面有什么类型的包。你可以看到诸如main、restricted、universe和partner这样的值。

ubuntu桌面版

※,安装

  • ctl + alt +f2进入命令行模式, ctl +alt +f1进入桌面模式
  • 开机花屏
    首先参考此文: https://www.likecs.com/show-203876563.html
    ● 进入到选择ubuntu安装页面时,狂点e进入编辑页面,以免黑屏
    ● Linux… quite splash --- 改为Linux… quite splash nomodeset 按F10正常安装
    ● 安装完成重启依旧会花屏,重复步骤一
    ● linux… vt_handoff 改为 linux… vt_handoff nomodeset 按F10正常进入系统
    ● 在软件更新-->附件驱动-->nvidia显卡选择第一个驱动进行安装。
    ● 重启后可正常进入系统。
    
    https://blog.csdn.net/qq_45968493/article/details/121801853
    
    https://blog.csdn.net/u012856866/article/details/119322683

※,桌面版刚安装后需要做的事:

  • 息屏设置为:从不
  • 设置root密码
  • 设置网络
  • 配置apt源:清华源OR阿里源
    # 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
    # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
    # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
    # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
    # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
    
    # 预发布软件源,不建议启用
    # deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
    # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
    
    deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
    
    deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
    
    # deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
    # deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
    
    deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
    deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu focal stable
    # deb-src [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu focal stable
  • ubuntu20.04.4桌面版安装后没有ssh服务,需要先安装。
    • 直接安装报错,需要先执行 `apt list|grep openssh`查到已安装的组件(openssh-client),
    • 将其卸载(apt purge openssh-client),
    • 然后 ·apt update· 然后再安装·apt install ssh· //13.1M
    • 配置`/etc/ssh/sshd_config`, ----> PermitRootLogin yes
    • systemctl restart ssh
  • 本地无法使用root进行登录:参考此文。注意修改后无需reboot即可生效。可以直接使用如下脚本:
    • cat >> /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf <<EOF
      greeter-show-manual-login= true ## now line
      all-guest=false # new line, not necessary
      EOF
      
      sed -i '3s/auth/#auth/' /etc/pam.d/gdm-autologin
      
      sed -i '3s/auth/#auth/' /etc/pam.d/gdm-password
      
      sed -i '9s/mesg/#mesg/' /root/.profile
      cat >> /root/.profile <<EOF
      tty -s && mesg n || true
      mesg n || true
      EOF
  • 本地登录时,桌面不显示root账号且不能输入用户名和密码,则修改以下文件:
    • [root@master33 GLM]$cat /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf
      [Seat:*]
      user-session=ubuntu
      autologin-user=root
      greeter-session=unity-greeter
      greeter-show-manual-login=true
      allow-guest=false
  • 安装vmware tools

※,远程连接桌面版ubuntu

★,xrdp:

apt install xrdp

黑屏:vim /etc/xrdp/startwm.sh添加如下内容重启服务。如果还不行,可以ps -ef |grep xrdp看一下,将所有的xrdp进程杀掉,然后systemctl重新启动xrdp尝试下。向日葵黑屏可能原因和多个xrdp进程也有关。

unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR
# . $HOME/.profile #如果不行,添加此内容再试试

★,linux向日葵sunlogin

Ubuntu20.04客户端下载及安装命令:点此查看官网说明

启动后是以systemctl服务的方式启动,名称为:systemctl status runsunloginclient.service

配置文件位置:/etc/sys_config.conf,使用 此项目 中的代码可以解密。

root@h3c:~/tong# cat /etc/sys_config.conf
[base]
sunlogincode=7795-4337-1077-6313-8792 # 有这一行表示登录了,没这一行表示没有登录
encryptupgrade=+xobY0S3auFWDryr1fumCg==
encry_pwd=jLyh3pJLT0E= # 这里是加密后的密码
client_id=TlMa4QaudSPKNhROIVkYr0Z4cDk7u1iTfeGG8zkcHmyi/2Ewp3yX8w==
secret_id=vRmaHKck0JBrYv4zHx3pgEjp3L1j9cCWf5nkYJ2WKs0=
machine_id=2QsctlS9RSVNQWmiUeYCqkFusPmNbImc8cXcGFxGhH5qHlbtQ3C7Hw==
license=38b3-5092-dfa0-cb73
licensepsw=
fastcode=k248148974 # 这里是识别码,去除首字母
fastcodepsw=s4X0lKRaQJrQuKyLrIHPnaDAnb5mbjS4
sunloginserver=rc10-fc04.oray.com:443
access_token=
refresh_token=

【注意】:安装向日葵(或Todesk等类似的软件)之后,操作系统在隔一段时间后会陷入休眠(睡眠),导致无法ssh远程连接,也无法ping通。解决方案为:执行下面的命令

  • systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target

linux系统无法通过向日葵被远控解决方案:

  • Ubuntu17.10以上
    • https://service.oray.com/question/11969.html
      • 这其实是由于系统默认采用了wayland作为显示服务器的缘故。修改为Xorg服务显示器即可。
        • ubuntu20.04默认使用的就是Xorg,不要修改为wayland.
      • 使用命令·echo $XDG_SESSION_TYPE·查看当前使用的是哪个显示服务器。
    • 向日葵 设置-安全,将Ubuntu访问(无人值守)设置为无密码直接访问。
    • 最近在使用向日葵时发现一个问题,Ubuntu端可以远程Win10端,但反之不可,除此之外,Android、IOS端远程Ubuntu端也是一直显示 “连接已断开”。解决完后特此整理下!!!
      究其根源,问题出在linux显示管理器上。解决方法如下:
      sudo apt-get update
      sudo apt-get upgrade
      sudo apt install lightdm
      执行最后这一步会有一个默认显示管理器的选项,即:gdm3、lightdm,这个随你怎么选,因为两个可以通过下面方式进行切换,但要想解决上面的问题就要每次远程的时候选择lightdm,最后重启即可解决!!!
      切换显示管理器类型:sudo dpkg-reconfigure lightdm 或者 sudo dpkg-reconfigure gdm3
      值得一提的是,如果选择了lightdm,那么快捷键win+L将无法锁屏,当然用鼠标可以锁。
      【自总结】这一步实际上只需要lightdm服务属于启动状态即可(ubuntu20.04上使用systemctl start lightdm.service来开启此服务),即使切换为gdm3实测也能用向日葵连上。但可能启动lightdm服务时可能会失败,此时需要使用`dpkg-reconfigure lightdm`命令先配置下lightdm。
  • CentOS:
    • not met yet

 向日葵或xrdp或todesk远程一直黑屏的问题:

  • Ubuntu20.04
    • 遇到的这种现象原因是 wayland和X11的问题(使用X11不会有问题,wayland有问题),可以在本地显示屏连接服务器,然后使用`echo $XDG_SESSION_TYPE`查看当前使用的是wayland还是X11. 如果是wayland,则可以编辑`/etc/gdm3/custom.conf`, 然后将·WaylandEnable=false·注释放开,然后重启gdm3服务:·systemctl restart gdm3.service·; 即可恢复X11。
    • 用向日葵连接89.1,root用户无法操作,可以使用其他用户登录,可以正常操作。在89.1上执行了·systemctl restart gdm3.service·后,向日葵连接89.1时就会返回到登录界面,重新输入用户名和密码。
    • 192.168.89.2无法连接todesk(类似黑屏),设置为dpkg-reconfigure gdm3选gdm3,然后systemctl stop lightdm,然后systemctl restart gdm3,之后就能连上了。过段时间又连不上了,然后再切换为lightdm又可以了。真是奇怪。另外:通过todesk连接89.2,分辨率只能是640x480,无法调节...
    • 192.168.89.1 使用todesk或向日葵连接后,屏幕被冻结,无法操作,设置为 dpkg-reconfigure lightdm选lightdm,然后systemctl stop gdm3, systemctl restart lightdm之后就可以了。
    • 192.168.89.53的todesk不停地断线,一会好一会坏。好像是配置root本地登录导致的。解决方法:重启gdm服务systemctl restart gdm.service,然后各种重启todesk。
    • 如果没有gdm3或lightdm,todesk也无法连接(一直卡在连接界面,xshell那里会一直弹出xmanager安装提示),使用apt install lightdm(lightdm和gdm都是这个命令安装)安装即可。

centos7:

  • 重启GNOME桌面服务:·systemctl restart gdm.service·

★,Todesk

Linux版安装:官网。包含安装、配置、卸载等。

todesk的配置文件位置: /opt/todesk/config/config.ini,里面有设备连接码

  • 小技巧:可以把windows下的配置文件(安装目录下)中的加密密码复制到Linux的配置文件中,这样就可以知道加密后的密码是多少了。
  • clienti即设备连接码。
  • privatedata 是设备连接码的加密形式。
  • tempauthpassex 是临时密码,默认没有这个字段,可以手动添加。临时密码也是加密的,可以将privatedata的值作为tempauthpassex的值,这样使用设备连接码的明文就可以作为临时密码了
  • authpassex是安全密码。也是加密的。

安装后,进程如下:

(base) [root@master33 ~]$ps -ef |grep -i todesk
root        1825       1  2 1月31 ?       1-04:48:42 /opt/todesk/bin/ToDesk_Service
root     1519683 1494507  0 10:27 pts/6    00:00:00 grep --color=auto -i todesk
root     2295074 2294220  0 3月17 ?       00:10:09 /opt/todesk/bin/ToDesk
(base) [root@server51 ~]# systemctl status todeskd.service 
● todeskd.service - ToDesk Daemon Service
   Loaded: loaded (/etc/systemd/system/todeskd.service; enabled; vendor preset: disabled)
   Active: active (running) since 三 2024-04-03 14:31:44 CST; 6min ago
  Process: 39442 ExecStop=/bin/kill -SIGINT $MAINPID (code=exited, status=0/SUCCESS)
 Main PID: 82603 (ToDesk_Service)
    Tasks: 86
   Memory: 180.4M
   CGroup: /system.slice/todeskd.service
           ├─ 82603 /opt/todesk/bin/ToDesk_Service
           └─106039 /opt/todesk/bin/ToDesk_Session --capAudio=false --blockInput=false --blackScreen=false --capCursor=false --capindex=0 --fps=1 --EncodeFormat=2 --EncodeType=...

4月 03 14:31:44 server51 systemd[1]: Started ToDesk Daemon Service.

命令行重启Todesk:·todesk` 或者·/opt/todesk/bin/ToDesk·,重启后只有ToDesk_Service这个进程,但是不影响使用!如果不行,再启动下·systemctl start todeskd.service·

todesk只能通过桌面版terminal打开,ssh的终端会报错:(ToDesk:526951): Gtk-WARNING **: 19:30:23.753: cannot open display:。可以先通过xrdp远程连上。

clash tun mode会影响todesk的启动,如无法正常启动,需关闭tun mode,安装todesk后再重新启动tun mode。

※,安装google-chrome

  • wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
  • 安装:apt install ./google-chrome-stable_current_amd64.deb 或 dpkg -i google-chrome-stable_current_amd64.deb
  • 启动:google-chrome
    • 如果不能启动,可以尝试使用如下命令:·nohup chromium-browser --no-sandbox & > /dev/null·
  • 卸载:dpkg -r google-chrome

※,ubuntu 20.04LTS 桌面版 移动无线网卡驱动安装以及发射wifi信号(设置wifi热点)

  1. 安装移动无线网卡驱动,参考此文 ,具体如下:

  RTL8811是一款双频的wifi网卡,支持Linux操作系统,本次案例就是在Ubuntu20桌面版操作系统中安装RTL8811的网卡驱动。

一、支持的网卡

RTL8811AU、RTL8811CU、RTL8821AU、RTL8821CU

二、下载驱动

github:https://github.com/brektrou/rtl8821CU       直接下载zip源码即可
本站下载

三、安装驱动

1、安装dkms

sudo su -i        #切换到root用户
apt-get update    #更新安装源
apt-get install -y dkms    #安装dkms

2、安装驱动程序

unzip rtl8821CU-master.zip    #解压上面下载的驱动
cd cd rtl8821CU-master
./dkms-install.sh             #安装!

显示如下内容则代表安装成功,拔插网卡查看是否正常工作。

[root@167 rtl8821CU]$./dkms-install.sh 
About to run dkms install steps...

Creating symlink /var/lib/dkms/rtl8821CU/5.4.1/source ->
                 /usr/src/rtl8821CU-5.4.1

DKMS: add completed.

Kernel preparation unnecessary for this kernel.  Skipping...

Building module:
cleaning build area...
'make' KVER=5.15.0-41-generic........................................................
Signing module:
 - /var/lib/dkms/rtl8821CU/5.4.1/5.15.0-41-generic/x86_64/module/8821cu.ko
Secure Boot not enabled on this system.
cleaning build area...

DKMS: build completed.

8821cu.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.15.0-41-generic/updates/dkms/

depmod...

DKMS: install completed.
Finished running dkms install steps.

安装完成后进行如下操作:

  • cd /var/lib/dkms/rtl8821CU/5.4.1/5.15.0-41-generic/x86_64/module/
  • install -p -m 644 8821cu.ko /lib/modules/$(uname -r)/kernel/drivers/net/wireless/
    • 5.15.0-46-generic
  • /sbin/depmod -a $(uname -r)
  • 重启机器后,ip a 即可看到无线网卡,如wlx502b73140b1e

发射wifi信号,参考此文

  • 命令行输入·nm-connection-editor·打开网络连接页面

 

posted on 2022-03-31 17:12  everest33  阅读(496)  评论(0编辑  收藏  举报