PXE自动化安装CentOS 8

2023-11-08

安装前准备:关闭防火墙和SELINUX,DHCP服务器静态IP。
切勿用桥接模式 最好是NET模式而且把自动分配DHCP对勾取消。

在这里插入图片描述
查看防火墙和seelinux是否关闭

[root@centos8 ~]#firewall-cmd --state
not running
[root@centos8 ~]#getenforce 
Disabled

安装对应的软件包

在这里插入图片描述
安装syslinux的时候centos8和centos7存在一点不同在后面的后缀-nonlinux在这里插入图片描述
启动相应的三个服务 但是由于dhcp的文件配置还没有配置,所以这里起不来。
在这里插入图片描述

[root@centos8 ~]#ss -ntulp
查看对应端口号

![在这里插入图片描述](https://img-blog.csdnimg.cn/20191114145943475.png

开启HTTP服务

把光盘仓库挂载到web上面 同时做好的应答文件和初始化脚本也可以一起挂载上去

[root@centos8 ~]#cd /var/www/html/

[root@centos8 html]#mkdir centos/{6,7,8}/isos/x86_64/ -pv
mkdir: created directory 'centos'
mkdir: created directory 'centos/6'
mkdir: created directory 'centos/6/isos'
mkdir: created directory 'centos/6/isos/x86_64/'
mkdir: created directory 'centos/7'
mkdir: created directory 'centos/7/isos'
mkdir: created directory 'centos/7/isos/x86_64/'
mkdir: created directory 'centos/8'
mkdir: created directory 'centos/8/isos'
mkdir: created directory 'centos/8/isos/x86_64/'

[root@centos8 html]#tree
.
└── centos
    ├── 6
    │   └── isos
    │       └── x86_64
    ├── 7
    │   └── isos
    │       └── x86_64
    └── 8
        └── isos
            └── x86_64

10 directories, 0 files
[root@centos8 html]#mount /dev/sr0 centos/8/isos/x86_64/
mount: /var/www/html/centos/8/isos/x86_64: WARNING: device write-protected, mounted read-only.
[root@centos8 html]#df
Filesystem     1K-blocks    Used Available Use% Mounted on
devtmpfs          910228       0    910228   0% /dev
tmpfs             924716       0    924716   0% /dev/shm
tmpfs             924716   17508    907208   2% /run
tmpfs             924716       0    924716   0% /sys/fs/cgroup
/dev/nvme0n1p2 104806400 4768644 100037756   5% /
/dev/nvme0n1p3  52403200  398588  52004612   1% /data
/dev/nvme0n1p1    999320  131252    799256  15% /boot
tmpfs             184940       4    184936   1% /run/user/0
/dev/sr0         6967726 6967726         0 100% /var/www/html/centos/8/isos/x86_64
[root@centos8 html]#ls
centos
[root@centos8 html]#mkdir ksdir
[root@centos8 html]#cd ksdir/

把ks8.cfg应答文件拷贝到这个目录下面

[root@centos8 ksdir]#ls
ks8.cfg
[root@centos8 ksdir]#vim ks8.cfg 

# Use graphical install
#repo --name="Appstream"  --baseurl=http://192.168.39.8/centos/8/isos/x86_64/AppStream
url --url=http://192.168.32.8/centos/8/isos/x86_64/
#repo --name="AppStream" --baseurl=file:///run/install/repo/AppStream
# Use CDROM installation media
# Keyboard layouts
keyboard --vckeymap=us --xlayouts='us'
# System language
lang en_US.UTF-8

# Network information
network  --bootproto=dhcp --device=ens160 --ipv6=auto --activate
network  --hostname=centos8.kaivi
# Root password
rootpw --iscrypted $6$OOwmaN2kXda4dp0t$oMs3ggugp0xuMknu6TqFyoZNPfka4LDIPftfqn1rrfkNmiQEJtUGPmvU2CbPjo0cvovkt4vBLIQPdb7Uz7vNe1
# Run the Setup Agent on first boot
firstboot --enable
# Do not configure the X Window System
skipx
# System services
services --disabled="chronyd"
# System timezone
timezone Asia/Shanghai --isUtc --nontp
user --name=wang --password=$6$oUfb/02CWfLb5l8f$sgEZeR7c7DpqfpmFDH6huSmDbW1XQNR4qKl2EPns.gOXqlnAIgv9pTogtFVaDtEpMOC.SWXKYqxfVtd9MCwxb1 --iscrypted --gecos="wang"
# Disk partitioning information
part / --fstype="xfs" --ondisk=sda --size=102400
part /data --fstype="xfs" --ondisk=sda --size=51200
part swap --fstype="swap" --ondisk=sda --size=2048
part /boot --fstype="ext4" --ondisk=sda --size=1024

%packages
@^minimal-environment
kexec-tools

%end

%addon com_redhat_kdump --enable --reserve-mb='auto'

%end

%anaconda
pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty
pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok
pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty
%end

%post
curl http://192.168.32.8/reset |bash
yum install vim -y
"ks8.cfg" 60L, 1805C                                     

把脚本也放在共享服务器上面,这里注意应答文件ks8.cfg中安装后脚本的路径要保持一致

[root@centos8 ~]#cd /var/www/html/
[root@centos8 html]#ls
centos  ksdir 
[root@centos8 html]#cp /data/init.sh ./reset
cp: overwrite './reset'? y
[root@centos8 html]#ls
centos  ksdir  reset

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可以正常访问,http服务正常

配置tftp服务

[root@centos8 ksdir]#cd /var/lib/tftpboot/
[root@centos8 tftpboot]#rpm -ql syslinux-nonlinux 
查找对应的安装包文件。这里我们需要/usr/share/syslinux/menu.c32和/usr/share/syslinux/pxelinux.0
拷贝到 /var/lib/tftpboot/内
[root@centos8 tftpboot]#cp /usr/share/syslinux/menu.c32 .
[root@centos8 tftpboot]#cp /usr/share/syslinux/pxelinux.0 .
[root@centos8 tftpboot]#ls
menu.c32  pxelinux.0

还需要对应的内核启动文件,这些文件在光盘里面有,可以直接拷贝过来

[root@centos8 tftpboot]#ls /var/www/html/centos/8/isos/x86_64/isolinux/
boot.cat  grub.conf   isolinux.bin  ldlinux.c32   libutil.c32  splash.png  vesamenu.c32
boot.msg  initrd.img  isolinux.cfg  libcom32.c32  memtest      TRANS.TBL   vmlinuz

[root@centos8 tftpboot]#cp /var/www/html/centos/8/isos/x86_64/isolinux/vmlinuz .
[root@centos8 tftpboot]#cp /var/www/html/centos/8/isos/x86_64/isolinux/initrd.img .
[root@centos8 tftpboot]#ls
initrd.img  menu.c32  pxelinux.0  vmlinuz

创建一个新的文件夹 pxelinux.cfg,里面用于放置菜单配置文件

[root@centos8 tftpboot]#mkdir pxelinux.cfg
[root@centos8 tftpboot]#cp /var/www/html/centos/8/isos/x86_64/isolinux/isolinux.cfg pxelinux.
pxelinux.0    pxelinux.cfg/ 
[root@centos8 tftpboot]#cp /var/www/html/centos/8/isos/x86_64/isolinux/isolinux.cfg pxelinux.
pxelinux.0    pxelinux.cfg/ 
[root@centos8 tftpboot]#cp /var/www/html/centos/8/isos/x86_64/isolinux/isolinux.cfg pxelinux.cfg/default
拷贝过来改名为default

[root@centos8 tftpboot]#vim /var/lib/tftpboot/pxelinux.cfg/default 
default menu.c32
timeout 600

menu title CentOS Linux 8

label linux
  menu label ^Auto Install CentOS Linux 8.0 mini
  kernel vmlinuz
  append initrd=initrd.img ks=http://192.168.32.8/ksdir/ks8.cfg

label manual
  menu label ^Manual Install CentOS Linux 8.0
  kernel vmlinuz
  append initrd=initrd.img inst.repo=http://192.168.32.8/centos/8/isos/x86_64/

menu separator # insert an empty line


label local
   menu default
  menu label Boot from ^local drive
  localboot 0xffff

[root@centos8 tftpboot]#cp /var/www/html/centos/8/isos/x86_64/isolinux/ldlinux.c32 .
[root@centos8 tftpboot]#cp /var/www/html/centos/8/isos/x86_64/isolinux/libutil.c32 .
[root@centos8 tftpboot]#cp /var/www/html/centos/8/isos/x86_64/isolinux/libcom32.c32 .
centos 7上面以上三个可以不要  但是centos8上面对于上面三个文件有一定的依赖性,所以也要一起拷贝过来
[root@centos8 tftpboot]#tree
.
├── initrd.img
├── ldlinux.c32
├── libcom32.c32
├── libutil.c32
├── menu.c32
├── pxelinux.0
├── pxelinux.cfg
│   └── default
└── vmlinuz

1 directory, 8 files

到这里tftp服务就配置好了

配置DHCP服务

[root@centos8 tftpboot]#systemctl start dhcpd
Job for dhcpd.service failed because the control process exited with error code.
See "systemctl status dhcpd.service" and "journalctl -xe" for details.
报错是因为没有配置/etc/dhcp/dhcpd.conf 这个文件暂时为空。需要复制参考文件
[root@centos8 tftpboot]#cp /usr/share/doc/dhcp-server/dhcpd.conf.example /etc/dhcp/dhcpd.conf 
cp: overwrite '/etc/dhcp/dhcpd.conf'? y

[root@centos8 tftpboot]#vim /etc/dhcp/dhcpd.conf 
# dhcpd.conf
#
# Sample configuration file for ISC dhcpd
#

# option definitions common to all supported networks...
option domain-name "example.org";
option domain-name-servers 180.76.76.76, 114.114.114.114;

default-lease-time 84600;
max-lease-time 100000;

# Use this to enble / disable dynamic dns updates globally.
#ddns-update-style none;

# If this DHCP server is the official DHCP server for the local
# network, the authoritative directive should be uncommented.
#authoritative;

# Use this to send dhcp log messages to a different log file (you also
# have to hack syslog.conf to complete the redirection).
log-facility local7;

# No service will be given on this subnet, but declaring it helps the 
# DHCP server to understand the network topology.

# This is a very basic subnet declaration.

subnet 192.168.32.0 netmask 255.255.255.0 {
  range 192.168.32.100 192.168.32.200;
  option routers 192.168.32.2;
  next-server 192.168.32.8;
  filename "pxelinux.0";
}
~          

重启服务即可

[root@centos8 ~]#systemctl restart dhcpd
[root@centos8 ~]#systemctl status dhcpd
● dhcpd.service - DHCPv4 Server Daemon
   Loaded: loaded (/usr/lib/systemd/system/dhcpd.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2019-11-14 14:12:29 CST; 5s ago
     Docs: man:dhcpd(8)
           man:dhcpd.conf(5)
 Main PID: 10692 (dhcpd)
   Status: "Dispatching packets..."
    Tasks: 1 (limit: 11377)
   Memory: 5.1M
   CGroup: /system.slice/dhcpd.service
           └─10692 /usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pid

Nov 14 14:12:29 centos8 dhcpd[10692]: ** Ignoring requests on virbr0.  If this is not what
Nov 14 14:12:29 centos8 dhcpd[10692]: you want, please write a subnet declaration
Nov 14 14:12:29 centos8 dhcpd[10692]: in your dhcpd.conf file for the network segment
Nov 14 14:12:29 centos8 dhcpd[10692]: to which interface virbr0 is attached. **
Nov 14 14:12:29 centos8 dhcpd[10692]: 
Nov 14 14:12:29 centos8 dhcpd[10692]: Listening on LPF/eth0/00:0c:29:fe:da:42/192.168.32.0/24
Nov 14 14:12:29 centos8 dhcpd[10692]: Sending on   LPF/eth0/00:0c:29:fe:da:42/192.168.32.0/24
Nov 14 14:12:29 centos8 dhcpd[10692]: Sending on   Socket/fallback/fallback-net
Nov 14 14:12:29 centos8 dhcpd[10692]: Server starting service.
Nov 14 14:12:29 centos8 systemd[1]: Started DHCPv4 Server Daemon.
[root@centos8 ~]#

PEX自动化安装就配置好了

安装新系统

现在去安装一个新的centos8的系统
在这里插入图片描述
选择菜单

在这里插入图片描述

在这里插入图片描述
安装成功
在这里插入图片描述
脚本运行成功

扩展同时配置加载安装centos6 和 centos 7

需要安装什么系统,对应的光盘同样需要挂载上去
在这里插入图片描述在这里插入图片描述
查看web服务器上是否挂载
在这里插入图片描述在这里插入图片描述

现在配置应答文件,这里用之前已经做好的应答文件

[root@centos8 html]#cd /var/www/html/
[root@centos8 html]#ls
centos  ksdir  reset
[root@centos8 html]#cd ksdir/
[root@centos8 ksdir]#ls
ks8.cfg
[root@centos8 ksdir]#rz -E
rz waiting to receive.
[root@centos8 ksdir]#ls
ks6.cfg  ks7.cfg  ks8.cfg

修改对应的应答文件 特别是注意路径

[root@centos8 ksdir]#vim ks7.cfg 
[root@centos8 ksdir]#vim ks6.cfg 
[root@centos8 ksdir]#ll
-rw-r--r-- 1 root root 1235 Nov 14 16:13 ks6.cfg
-rw-r--r-- 1 root root 1435 Nov 14 16:09 ks7.cfg
-rw-r--r-- 1 root root 1805 Nov 14 14:35 ks8.cfg

在这里插入图片描述
在网页需要分别能打开对应的应答文件,不然就是权限问题 需要设置一下权限

设置tftp配置文件

[root@centos8 tftpboot]#ls
initrd.img  ldlinux.c32  libcom32.c32  libutil.c32  menu.c32  pxelinux.0  pxelinux.cfg  vmlinuz

创建分别放置不同操作系统的目录6 7 8.用来放置不同的内核文件

[root@centos8 tftpboot]#mkdir {6,7,8}
[root@centos8 tftpboot]#mv vmlinuz initrd.img 8/

[root@centos8 tftpboot]#cp /var/www/html/centos/7/isos/x86_64/isolinux/vmlinuz ./7/
[root@centos8 tftpboot]#cp /var/www/html/centos/7/isos/x86_64/isolinux/initrd.img ./7/


[root@centos8 tftpboot]#cp /var/www/html/centos/6/isos/x86_64/isolinux/vmlinuz ./6/
[root@centos8 tftpboot]#cp /var/www/html/centos/6/isos/x86_64/isolinux/initrd.img ./6/
[root@centos8 tftpboot]#tree
.
├── 6
│   ├── initrd.img
│   └── vmlinuz
├── 7
│   ├── initrd.img
│   └── vmlinuz
├── 8
│   ├── initrd.img
│   └── vmlinuz
├── ldlinux.c32
├── libcom32.c32
├── libutil.c32
├── menu.c32
├── pxelinux.0
└── pxelinux.cfg
    └── default

4 directories, 12 files

修改菜单项 注意路径 是相对路径

[root@centos8 tftpboot]#vim pxelinux.cfg/default 

default menu.c32
timeout 600

menu title CentOS Linux

label linux8
  menu label Auto Install CentOS Linux ^8.0 mini
  kernel 8/vmlinuz
  append initrd=8/initrd.img ks=http://192.168.32.8/ksdir/ks8.cfg

label linux7
  menu label Auto Install CentOS Linux ^7.0 mini
  kernel 7/vmlinuz
  append initrd=7/initrd.img ks=http://192.168.32.8/ksdir/ks7.cfg

label linux6
  menu label Auto Install CentOS Linux ^6.0 mini
  kernel 6/vmlinuz
  append initrd=6/initrd.img ks=http://192.168.32.8/ksdir/ks6.cfg


label manual
  menu label Manual Install CentOS Linux 8.0
  kernel vmlinuz
  append initrd=initrd.img inst.repo=http://192.168.32.8/centos/8/isos/x86_64/

menu separator # insert an empty line


label local
   menu default
  menu label Boot from ^local drive
  localboot 0xffff

参考文献如下

在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PXE自动化安装CentOS 8 的相关文章

  • 如何调用位于其他目录的Makefile?

    我正在尝试这样做 我想打电话给 make Makefile存在于其他目录中 abc可以使用位于不同目录中的 shell 脚本的路径 我该怎么做呢 由于 shell 脚本不允许我cd进入Makefile目录并执行make 我怎样才能编写she
  • 如何查明 Ubuntu 上安装了哪个版本的 GTK+?

    我需要确定 Ubuntu 上安装了哪个版本的 GTK 男人似乎不帮忙 这个建议 https stackoverflow com a 126145 会告诉您安装了哪个 2 0 的次要版本 不同的主要版本将具有不同的包名称 因为它们可以在系统上
  • touch命令在一个目录下创建多个文件(不同名称)

    我想制作一个在 bash 中创建目录和文件结构的脚本 我尝试过这样的事情 mkdir p 1 2 touch 1 2 a b c a b c 应该是在一个命令或其他命令中创建的文件 但由于某种原因 结构是这样的 current folder
  • numpy 未定义符号:PyFPE_jbuf

    我正在尝试使用一百万首歌曲数据集 为此我必须安装 python 表 numpy cython hdf5 numexpr 等 昨天我设法安装了我需要的所有内容 在使用 hdf5 遇到一些麻烦之后 我下载了预编译的二进制包并将它们保存在我的 b
  • 如何在我的 AWS EC2 实例上安装特定字体?

    我有一个在 AWS EC2 Amazon Linux Elastic Beanstalk 实例上运行的 Python 应用程序 该实例需要某些特定字体才能生成输出 并且想知道如何在部署或实例启动过程中安装它们 我的代码在本地计算机 OS X
  • 在 LINUX 上使用 Python 连接到 OLAP 多维数据集

    我知道如何在 Windows 上使用 Python 连接到 MS OLAP 多维数据集 嗯 至少有一种方法 通常我使用 win32py 包并调用 COM 对象进行连接 import win32com client connection wi
  • 无法执行'x86_64-conda_cos6-linux-gnu-gcc':没有这样的文件或目录(pysam安装)

    我正在尝试安装 pysam 执行后 python path to pysam master setup py build 这个错误的产生是 unable to execute x86 64 conda cos6 linux gnu gcc
  • 如何不断刷新屏幕并实时更新[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想在linux上写一个C程序 不断刷新屏幕并实时更新 例如类似于top终端中的命令 谁能指出我正确的方向 为了保持它跨终端类型的可移
  • C 程序从连接到系统的 USB 设备读取数据

    我正在尝试从连接到系统 USB 端口的 USB 设备 例如随身碟 获取数据 在这里 我可以打开设备文件并读取一些随机原始数据 但我想获取像 minicom teraterm 这样的数据 请让我知道我可以使用哪些方法和库来成功完成此操作以及如
  • 劫持系统调用

    我正在编写一个内核模块 我需要劫持 包装一些系统调用 我正在暴力破解 sys call table 地址 并使用 cr0 来禁用 启用页面保护 到目前为止一切顺利 一旦完成 我将公开整个代码 因此如果有人愿意 我可以更新这个问题 无论如何
  • 设置 Apache POI 的路径

    我想创建 Excel 文件并使用 java 程序在该文件中写入数据 That is here http www techbrainwave com p 554我在 java 文件所在的位置提取了 Apache POI 并将该路径包含在路径变
  • 在 Linux 中禁用历史记录 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 要在 Linux 环境中禁用历史记录 我执行了以下命令 export HISTFILESIZE 0 export HISTSIZE 0 u
  • 在Linux上编译C# + WPF以便在Windows上运行

    我有一个 C 应用程序 其中某些部分是使用 WPF 编写的 Mono 不支持 可以在 Linux 上编译这个应用程序吗 最终 该应用程序将在 Windows 上运行 但它是更大框架的一部分 并且我们的整个构建过程在 Linux 上运行 因此
  • xsel -o 对于 OS X 等效项

    是否有一个等效的解决方案可以在 OS X 中抓取选定的文本 就像适用于 Linux 的 xsel o 一样 只需要当前的选择 这样我就可以在 shell 脚本中使用文本 干杯 埃里克 你也许可以安装xsel在 MacOS 上 更新 根据 A
  • Locale.getDefault() 始终返回 en

    unix 机器上的服务器始终使用 en 作为默认区域设置 以下是区域设置输出 LANG en US LC CTYPE C LC NUMERIC C LC TIME C LC COLLATE C LC MONETARY C LC MESSAG
  • 使用 find - 删除除任何一个之外的所有文件/目录(在 Linux 中)

    如果我们想删除我们使用的所有文件和目录 rm rf 但是 如果我希望一次性删除除一个特定文件之外的所有文件和目录怎么办 有什么命令可以做到这一点吗 rm rf 可以轻松地一次性删除 甚至可以删除我最喜欢的文件 目录 提前致谢 find ht
  • bluetoothctl 到 hcitool 等效命令

    在 Linux 中 我曾经使用 hidd connect mmac 来连接 BT 设备 但自 Bluez5 以来 这种情况已经消失了 我可以使用 bluetoothctl 手动建立连接 但我需要从我的应用程序使用这些命令 并且使用 blue
  • 是否可以在Linux上将C转换为asm而不链接libc?

    测试平台为Linux 32位 但也欢迎 Windows 32 位上的某些解决方案 这是一个c代码片段 int a 0 printf d n a 如果我使用 gcc 生成汇编代码 gcc S test c 然后我会得到 movl 0 28 e
  • Android:ANT 构建失败,并显示 google-play-services-lib:“解析为没有项目的 project.properties 文件的路径”

    我正在尝试使用 ANT 构建我的应用程序 但在包含 google play services lib 库项目后 我惨遭失败 Step 1 我在 project properties 文件中设置了对库项目的引用 android library
  • 无法加载 JavaHL 库。- linux/eclipse

    在尝试安装 Subversion 插件时 当 Eclipse 启动时出现此错误 Failed to load JavaHL Library These are the errors that were encountered no libs

随机推荐

  • 【转载】TCP的seq和ack号计算方法

    seq和ack号存在于TCP报文段的首部中 seq是序号 ack是确认号 大小均为4字节 注意与大写的ACK不同 ACK是6个控制位之一 大小只有一位 仅当 ACK 1 时ack字段才有效 建立 TCP 连接后 所有报文段都必须把 ACK
  • Kotlin 集合框架

    集合概述 Kotlin 标准库提供了一整套用于管理集合的工具 集合是可变数量 可能为零 的一组条目 各种集合对于解决问题都具有重要意义 并且经常用到 集合通常包含相同类型的一些 数目也可以为零 对象 集合中的对象称为元素或条目 例如 一个系
  • Linux 网桥实现分析

    第一部份 源码框架 一 网桥原理 传统的中继器 如HUB 是一个单纯的物理层设备 它将每一个收到的数据包 在其所有的端口上广播 由接收主机来判断这个数据包是否是给自己的 这样 网络资源被极大的浪费掉了 网桥之所以不同于中继器 主要在于其除了
  • kubernetes详解

    kubernetes详解 1 kuberenetes简介 1 1什么是kubernetes 1 2 Kubernetes发展史 1 3 为什么要使用kubernetes 1 4 Kubernetes 特点 1 5 kubernetes特性
  • Class.forName()用法简介说明

    转自 Class forName 用法简介说明 下文笔者讲述Class forName 方法的功能简介说明 如下所示 class对象简介说明 class对象用于表示类 每一个类在JVM中都对应一个class对象 jvm中将使用class对象
  • Keil5 STM32 软件仿真错误

    error 65 access violation at 0x40021000 no read permission 这个错误是Keil引起的 应该是没有识别出芯片的型号 我是在RT Thread OS 仿真运行的时候发现的 这里的仿真芯片
  • ipynb转markdown

    不知道为什么ipynb里面没法显示图片 为了阅读体验 没办法只能转为markdown了 jupyter nbconvert to markdown 特征处理 ipynb
  • 8800个机器学习开源项目为你精选TOP30!

    授权自AI科技大本营 ID rgznai100 本文共图文结合 建议阅读5分钟 本文为大家带来了30个广受好评的机器学习开源项目 最近 Mybridge发布了一篇文章 对比了过去一年中机器学习领域大约8800个开源项目后 选出30个2017
  • chatGPT身份指令

    充当 Linux 终端 我想让你充当 Linux 终端 我将输入命令 您将回复终端应显示的内容 我希望您只在一个唯一的代码块内回复终端输出 而不是其他任何内容 不要写解释 除非我指示您这样做 否则不要键入命令 当我需要用英语告诉你一些事情时
  • 静态变量与静态函数

    堆与栈 1 栈区 stack 由编译器自动分配释放 存放函数的参数值 局部变量的值等 操作是类似于数据结构中的栈 2 堆区 heap 一般有程序员分配和释放 动态存储分配 分配方式类似于链表 3 全局区 static 全局变量和静态变量的存
  • debian ubuntu 设置DNS 永久设置 重启系统不会丢失

    debian ubuntu 设置DNS 永久设置 重启系统不会丢失 1 debian ubuntu 设置DNS 快捷步骤 2 下面是命令解释 2 1 决定系统dns的文件是 etc resolv conf 2 2 谁能最终影响 etc re
  • 封神台——Cookie伪造目标权限(存储型XSS)

    点击传送门看到的是一个留言板 我们首先要判断是否存在XSS 于是输入一串JS代码 看是否会弹出一个内容为 zkaq 的弹窗 出现了 说明存在XSS漏洞 关于XSS漏洞的科普如下 跨站脚本攻击是指恶意攻击者往Web页面里插入恶意Script代
  • loadtxt()读取数据类型转换/string转换float/ValueError: could not convert string to float:

    实验数据样式 Test csv 只显示几行 0 589469 5 000059 0 480721 0 000204 0 000204 12 945284 4 999956 9 671936 0 000145 0 000145 9 70103
  • 每天一个小技巧之Bash Shell Debug

    sh x xxxx sh
  • 多态的定义及原理

    一 多态的概念和定义 1 多态的概念 多态 Polymorphism 同字面意思意为多种形态 本质就是不同对象完成同一行为产生的不同结果 2 多态的构成条件 多态是在不同继承关系的类对象 去调用同一函数 产生了不同的行为 在继承中要构成多态
  • 基于Pytorch的模型推理

    训练部分说明 假设我们现在有两个文件 first file train py 用于训练模型 second file inference py 用于推理检测 在train py文件中我们使用了定义了一个类 里面声明了我的网络模型 例如 cla
  • java 备份sqlserver部分表_SQLServer备份指定表

    先定义表类型 CREATE TYPE t bak tables AS TABLE table name VARCHAR 200 然后再定义备份过程 CREATE PROC sp bak tables tbs t bak tables REA
  • 火线精英服务器怎样可以稳定,火线精英怎么操控好速度慢威力大的斩月

    关键词 火线精英怎么操控好速度慢威力大的斩月 火线精英斩月怎么操控 火线精英怎么操控好斩月 火线精英斩月怎么用 火线精英斩月是一把新出的刀 外格炫酷 威力惊人 美中不足的是他的攻速 这地方是硬伤啊 但是 作为新一代的神器 怎样才能操控好呢
  • Intellij Idea单元测试覆盖率插件JaCoCo的使用

    JaCoCo是Java代码单元测试覆盖率工具 可以用于IDE 也可以用于Maven等构建工具 IDE 主要介绍Intellij Idea中的使用 Eclipse请查看Jacoco Eclipse简单操作 Intellij Idea用法 调整
  • PXE自动化安装CentOS 8

    安装前准备 关闭防火墙和SELINUX DHCP服务器静态IP 切勿用桥接模式 最好是NET模式而且把自动分配DHCP对勾取消 查看防火墙和seelinux是否关闭 root centos8 firewall cmd state not r