Kali linux 2016.2(Rolling)安装之后的常用配置

2023-05-16

转发:https://www.cnblogs.com/zlslch/p/6047913.html

前言

  使用默认的Kali Linux设置来学习是可以的,但是我们通常要修改系统的一些基本设置,来最大化使用Kali平台的功能。

  

以下内容

  网络的基础知识

  使用图形用户界面来配置网卡

  使用命令行来配置网卡

  使用图形用户界面来配置网卡

  使用命令行来配置无线网卡  

  启动、停止和重启Apache服务器

  安装FTP服务器  

  启动、停止和重启SSH服务器

  挂载外置媒体

  更新Kali

  升级Kali  

  增加Debian软件库

  

网络基础知识

  1、私有IP地址

    路由器的内网接口(或网卡)有一股IP地址  192.168.1.1,这成为私有地址。因为它在互联网上是无法使用的。

            IP地址范围                    可以IP数量

      10.0.0.0  至   10.255.255.255               16 777 216

      172.16.0.0  至  172.31.255.255              1  048  576

      192.168.0.0  至  192.168.255.255                65  536

    私有地址,要连接到互联网并能上网,路由器会使用一种叫做NAT(网络地址转换)的技术。它会将私有地址转换成互联网上可以使用的地址,这些地址通常是ISP提供的,并且分配到路由器的外网接口上(路由器的另一张网卡)。如果用户视图直接在互联网上使用私有地址,而不经过带有NAT技术的路由器,它的通信会失败。因为互联网上的路由器和设备会拒绝私有地址的访问。

  私有IP地址用在哪些场合?

    在内部或私有网络中,但是不能用在互联网上。是DHCP分配的。

  2、默认网关

    路由器分出了两个网络,内网和外网。并且提供了一些基本的安全功能,例如一个基础的防火墙。此外,路由器还提供了一个从内网访问外网的途径。因此,路由器的内网地址就是某两台客户端访问外网的必经之路。这个地址称作默认网关。 

  网关,就是将它看作是离开小镇的唯一出口。

  而,计算机也需要知道离开内网的出口,这就是默认网关。

  3、域名服务器

    这里,很简单,不多赘述。

  4、DHCP服务

    在网络领域里,没有什么比DHCP更神奇的了,如果计算机已经配置为自动DHCP配置,那么用户只需要插上网线就可以上网了。当计算机启动网络通信查找DHCP服务器时,会发送广播请求寻找DHCP服务器。服务器会回复该客户端,并指定请求计算机所需的配置,包括IP地址,默认网关,域名服务器和子网掩码。在大部分情况下,这是配置网卡的好办法。但是如果你在进行渗透测试,使用DHCP来配置你的网络就会告诉整个网络的人你已经登录该网络了。这通常不是什么好事情。

  5、子网划分

    通过对IP地址使用一个掩码,我们就可以过滤出IP地址的一部分,然后用于寻址了。这里具体不多赘述。

  6、Kali Linux默认配置

    如前所述,大部分的渗透测试工程师、白帽子,并不想他们的网卡在接入网络时发出通知。但这正是Kali Linux启动并接入网络中时会做的。当进行渗透测试的时候,使用者必须注意,插上网线之前应该禁用网卡,以避免不必要的通信。在自定义安装时(无论是从硬盘、U盘或SD卡安装),可以更改这个自动网络设置。另一种方式是通过刻录自定义的Live盘,配置成手动网络配置。

使用图形用户界面来配置网络接口

  “Application”   ->    “System Tools”   -> “Perferences”   ->  "Network Connections"

  当然,有些版本,稍微有点出入。我的是Kali 2.0

  自行,可以去设置,增加网卡等。

  这里,不多赘述了。

使用命令行来配置网络接口

   理解如何使用命令行来配置,或者重新配置网络适配器是非常重要的,当无法使用Linux图形界面,或者通过终端窗口远程登录到一个系统上时这就非常有用了。在很多渗透测试的案例中,使用命令行来进行配置更改是唯一的选择。这些更改需要提升账户权限,在Live发行版上,可以使用root账户来进行更改,在Kali Linux安装版上,可以使用SDO命令。一旦提升了账户权限之后,就可以配置网卡了。

  使用如下的命令查看计算机上的所有网卡和单个网卡的状态:

    ifconfig -a

  这个命令会显示所有网卡的当前配置。

  停止第一个以太网适配器的命令

    ifconfig eth0 down

  启动第一个以太网适配器的命令

    ifconfig rth0 up

  将适配器的IP地址从192.168.1.66改为192.168.1.22

    ifconfig eth0 192.168.1.66 192.168.1.22

  同时更改IP地址和子网掩码,将IP地址设置为192.168.1.22,子网掩码设置为255.255.0.0

    ifconfig eth0 192.168.1.22 netmask 255.255.255.0

  使用命令行来配置网卡并不需要比使用图形用户界面做更多的工作,所进行的设置也并非都保存在同一位置。如将默认网关更改为192.168.1.2,可以使用

    route add default gw 192.18.1.2

  DNS服务器设置是通过修改/etc/resolv.conf来实现的。也可以使用文本编辑器来修改文件,或者使用

    echo nameserver 4.4.4.4  >   /etc/resolv.conf

  上面的命令会删除已有的DNS服务器,并用4.4.4.4替换。要增加新DNS服务器,可以使用

    echo nameserver 8.8.8.8  >  /etc/resolv.conf

 命令行配置DHCP

  在这种模式下DHCP服务器会为网卡提供所有需要的配置设置。这对绝大多数最终用户来说都是方便的,但是呢,对于渗透测试来说却不理想,因为经过配置的系统会记录在DHCP服务器的数据库中。因此可以使用如下命令来在渗透测试时关闭DHCP自动配置。这里使用的是nano编辑器,你可以使用任意的编辑器输入下面的文本。

  nano /etc/networking/interfaces

  # 将下面的行写入文件

  auto eth0

  iface eth0 inet static

  address  {IP_Address}

  netmask {netmask}

  gateway { Gateway_IP_Address}

  保存该文本文件并退出编辑器以完成修改,要使设置生效,可能需要停止再重新启动以太卡。

  要配置第一张网卡,可以使用

  dhclient eth0

  这条命令会自动将网卡配置成使用DHCP服务器提供的设置。

使用GUI来配置无线网卡

  配置无线网卡同样可以使用之前配置以太网接口所使用的GUI来完成。只需要在网络连接对话框中选择“Wireless”选项卡即可。

  在这个选项卡,点击“Add”,弹出“Editing Wireless connection1(假设当前我为第一个无线适配器)”。

  连接名称

    默认的连接名是“Wireless connection”,后面跟着当前适配器的序号,比如Wireless connection1。可以自己更改为一个有意义的名称。

  自动连接复选框

    当“connection automatically”复选框被勾选时,即便没有用户的交互,系统也会在启动时自动连接无线网络。就像前面提到的DHCP,这可能对绝大多数Linux用户来说很方便。但是,对渗透测试来说并不是一个好的选择,因为它会在连接到网络时发出广播。如果这个复选框被取消了,测试者就可以手动连接无线适配器了。

  

  “Wireless”标签页

    服务集标识符

    服务集标识器是网络的名字,即,SSID。用于逻辑识别一个无线网络。每个网络只有一个SSID,客户端会用这个标识连接网络。在有中心接入点的网络中,SSID是由中心接入点设置的,网络中的客户端必须使用这个SSID才能连接到网络中。在有多个接入点的网络中,这些接入点的SSID必须相同才能互相通信。

    服务集标识符是通过对多个无线接入点AP(AccessPoint)设置不同的SSID,并要求无线工作站出示正确的SSID才能访问AP,这样就可以允许不同群组的用户接入,并对资源访问的权限进行区别限制。

    模式

    无线网卡可以被配置成两个模式,临时模式(ad hoc)和基础设施模式(infrastructure)。ad hoc模式的网络通常是在没有中心接入点进行网络管理的情况下由计算机无线互连而成。在这种模式下,每个无线连接的配置都应该符合其他计算机的无线网络配置才能建立起连接。在infrastructure模式下,中心接入点会管理每个连接到该网络和服务集中其他计算机的客户端。每个客户端的配置都应该符合接入点定义的设置。这两个模式的主要区别就是在ad hoc下没有中心管理,而infrastructure模式下有一个接入点来管理网络。

    基本服务集标识符

    基本服务集标识符,用来在infrastructure模式中识别接入点的MAC地址。和SSID的不同的是,每个接入点都会有唯一的BSSID,就像每个接入点都会有唯一的MAC地址。

    设备MAC地址

    设置MAC地址字段是用来将本配置指定在一个无线适配器上,对于有多个适配器的计算机来说这很方便。这个字段的下拉列表中会包括可用的无线适配器的MAC地址,用户只需要为要配置的无线适配器选择正确的MAC地址就可以了。

    克隆MAC地址

    很多时候渗透测试人员都会不想使用计算机所使用的适配器的真实MAC地址。可以非常简单地绕开一些安全规程,比如MAC地址过滤,只允许指定MAC地址的系统连接到网络。你也可以使用这种方法将自己的设备伪装成网络上的其他设备。

    最大传输单元

    MTU,这个很简单,不多赘述。

  

  “Wireless Security”标签页

    安全下拉列表  

    Security下拉列表是用来选择保护无线网络安全的方式的。对于ad hoc网络来说,网络中的用户决定了什么样的安全设置是正确的,请确定每个客户端的安全设置都和网络中某计算机是一样的。在infrastructure模式中,每个设置都必须设置为接入点指定安全设置。

    有线等效保密

    WEP是古老的安全方法,它使用基本的加密技术,可以提供与有线系统等效的安全性。WEP使用10位或26位16进制的密钥来加密通信。有人发现WEP加密标准有安全缺陷,渗透测试人员可以轻易地破解大多数WEP密钥。 IEEE802.1x标准中的动态WEP使用端口安全措施来为无线网络提供额外的安全措施。

    轻量级可扩展身份验证协议

    LEAP,这里不多赘述。

    Wi-Fi网络安全接入

    WPA是一种接入技术,可以使用临时密钥完整性,TKIP协议和完整性检查来提高无线网络的安全性,使用了WPA的网络比使用WEP的无线网络更安全。而且WPA2还在最初的WPA标准上做了进一步加强,使用了更加健壮的加密算法,在WPA个人模式中,每个计算机都会使用一个用密码生成的密钥。

    密码和密钥

    这个很简单,不多赘述。

    “IPv4 Setting”标签页

    这个很简单,不多赘述。

Web服务器

  Kali Linux中包括了一个易于配置的Apache Web服务器。拥有一个易于配置的Web服务器对于渗透测试人员的作用很大。例如,通过使用Web服务,测试者可以创建钓鱼网站。通过使用社会工程学攻击使得这些网站向用户发送恶意代码,配置服务器后门,向其他恶意程序发送指令等。在渗透测试中用到HTTP服务的地方还有很多。

  使用GUI启动、停止、重启Apache服务

  使用GUI是启动、停止和重启Web服务最简单的方法。选择Kali界面上方的“Application”,然后在下拉菜单中选择“Kali Linux”,会出现相应的子菜单,从菜单中选择“System Services”,最后在菜单中选择“HTTP”,就会显示出启动、停止和重启Apache服务的选项。

  当选择其中一项之后,就会弹出一个Shell窗口并在其中显示Web服务现在的状态。在默认安装的Kali中,启动和重启Apache时会显示一条错误信息,内容是“Could not reliably determine the server's fully domain name,using 127.0.0.1 for ServerName.”。这条错误现在不会引起问题,因为该Web服务器在本机IP上是可以访问的。要修正这条错误,编辑/etc/apache2 目录中的apache2.conf。在文件最后加上ServerName后面跟上服务器名,并保存文件。

  ServerName localhost

  当Apache服务器启动或重启之后,就可以通过在浏览器中输入计算机IP地址来访问默认网页了。

  使用命令行启动、停止、重启Apache服务

  Apache HTTP服务器可以通过在命令/etc/init.d/apache2后跟上相应的动作请求来启动、停止和重启。

  /etc/init.d/apache2 start

  /etc/init.d/apache2 stop

  /etc/init.d/apache2 restart

  Apache默认网页  

  这个,很简单,不多赘述。

    

FTP服务器

  文件传输协议FTP,需要注意的是,FTP并不会加密文件或计算机之间的通信信道,因此网络上的文件传输是可以被监控者获取的。

  Kali Linux并不包括FTP服务器程序,你可以安装一个FTP服务来让系统间的文件传输变得更容易。Kali上可以安装的FTP服务非常多,其中一个是Pure-FTPd。当然,其他的FTP服务也是可以使用的。你可以用apt-get来下载并安装Pure-FTPd。

    apt-get install pure-ftpd-common pure-ftpd

  这个命令会安装并设置FTP服务。此外还需一些小配置来保证Pure-FTP服务器可以正常工作。

    cd /etc/pure-ftpd/conf

    echo no > Bind

    echo no > PAMAuthentication

    echo no > UnixAuthentication

      ln -s /etc/pure-ftpd/conf/PureDB/  /etc/pure-ftpd/auth/50pure

  接下来需要创建FTP服务需要的用户组和用户,首先创建一个系统组

    groupadd ftpgroup

  接下来向新建的组里面添加新用户。这个命令会让添加的新用户没有访问home目录和登录shell的权限

    useradd -g ftpgroup -d /dev/null -s /bin/false ftpuser

  为FTP文件新建一个目录

    mkdir -p /home/

  在FTP目录里面添加用户目录。在本例中,即将创建的用户sam需要这样一个目录

    mkdir /home/pubftp/sam

  然后给FTP服务添加一个新的用户和密码。在本例中,新用户是sam

    pure -pw useradd sam -u fpgroup -d /home/pub/sam

  接下来会提示你需要创建一个密码

  使用如下命令来更新Pure-FTPd的数据库

    pure-pw mkdb

  最后用如下命令启动FTP服务

    service pure-ftpd start

  启动FTP之后,你可以这样测试一下该服务

    ftp { IP_Address } 

  在提示符中输入用户名sam和密码。如果认证成功,就说明FTP服务器运行正常。否则,重启计算机并尝试再一次连接到FTP服务器。

    关于使Pure-FTPd正常工作的必须步骤,请参考 http://samiux.blogspot.com/2011/08/howto-pure-ftpd-and-atftpd-on-backtrack.html

SSH服务器

  SSH提供了一种更安全的远程访问Kali Linux的方式。SSH在通信的计算机之间提供一个安全的加密通道,这对渗透测试人员来说非常有用,它可以防止数据在传输过程中被网络中的安全工具所检测到,比如入侵检测系统(IDS)和入侵防御系统(IPS)。

  生成SSh密钥

  要安全地使用SSH,你需要生成密钥来对通信加密,提高通信的安全性。要生成密钥,在命令行中输入如下命令。

  首先,将原始的SSH密钥从默认目录中移走,但是不要删除它们。

  mkdir -p /etc/ssh/original_keys

  mv /etc/ssh/ssh_host_*   /etc/ssh/original_keys

  cd /etc/ssh

  生成新的SSH密钥

  dkpg-reconfigure openssh-server

  启动或者重启SSH守护进程

  service ssh start   或者   service ssh restart

  

  使用Kali GUI管理SSH服务

  SSH服务被内置在kali的图形用户界面的主文件结构中,你可以用和操作Apache相同的方式来操作它:选择左上角的“Applicatin”,从下拉菜单中选择“Kali Linux”,在弹出的子菜单中选择“System Service”,然后从相应菜单中选择“SSH”,就会显示出启动、停止和重启SSH服务的选项。

  使用命令行管理SSH服务

  SSh服务也可以通过命令行来启动、停止和重启。只需要将start、stop和restart加在/etc/init.d/ssh后面就行了。

    /etc/init.d/ssh start

    /etc/init.d/ssh stop

    /etc/init.d/ssh restart

  

  远程访问系统  

  当在Kali系统中启动SSH服务之后,就可以从H-Linux系统远程访问计算机了。在Linux系统中输入如下命令来连接(如果用户名为sam,计算机的IP地址是192.168.1.66)

  在windows客户端访问SSH需要使用SSH客户端。互联网上可以找到很多此类客户端,例如很常用的putty,你可以从http://putty.org下载。安装客户端之后,只需要填入Kali Linux的IP地址或主机名以及登录证书就可以远程连接到Kali计算机上了。

  

配置并访问外置媒体

  在Kali Linux中使用外置媒体,例如硬盘和拇指驱动器,比在Backtrack中容易的多。通常使用USB连接到计算机上的媒体都会被操作系统自动识别,如果没有自动识别的话,可以使用下面的方法手动挂载驱动器。

  手动挂载驱动器

  要在Kali Linux中手动挂载驱动器,第一步是将物理设备连接到计算机上。然后打开终端并创建一个挂载点。要创建挂载点,首先需要提升账户的权限。如果计算机的root账户没有启动,也可以使用sudo 命令。下面的命令可以在media目录中创建一个叫做newdrive的挂载点:

  mkdir /media/

作者:大数据和人工智能躺过的坑
出处:大数据和AI躺过的坑 - 博客园

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。 如果您认为这篇文章还不错或者有所收获,您可以通过右边的“打赏”功能 打赏我一杯咖啡【物质支持】,也可以点击右下角的【好文要顶】按钮【精神支持】,因为这两种支持都是我继续写作,分享的最大动力!

分类: 网络安全攻防

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

Kali linux 2016.2(Rolling)安装之后的常用配置 的相关文章

  • linux github 完整源码下载

    git clone https github com torvalds linux git 对应 xff1f kernel git stable linux git Linux kernel stable tree
  • Qt并发模块Qt Concurrent的使用

    文章目录 1 简介2 准备工作2 1 修改 96 pro 96 文件2 2 包含头文件和声明命名空间 3 运行3 1 运行外部函数3 2 运行成员函数 4 向函数传递参数的方式5 获取函数返回值的方式 1 简介 QtConcurrent 命
  • C语言指针的运算(指针加或减一个整数的意义)

    指针可以加上或减去一个整数 指针的这种运算的意义和通常的数值的加减运算的意义是不一样的 xff0c 以单元为单位 例一 xff1a include lt stdio h gt int main char a 61 34 0123456789
  • 基于Qlearning强化学习的倒立摆控制系统matlab仿真

    目录 1 算法描述 2 仿真效果预览 3 MATLAB部分代码预览 4 完整MATLAB程序 1 算法描述 强化学习通常包括两个实体agent和environment 两个实体的交互如下 xff0c 在environment的statest
  • m基于FH-GFSK信号的盲解调matlab仿真

    目录 1 算法描述 2 仿真效果预览 3 MATLAB核心程序 4 完整MATLAB 1 算法描述 GFSK 高斯频移键控调制是把输入数据经高斯低通滤波器预调制滤波后 xff0c 再进行FSK调制的数字调制方式 它在保持恒定幅度的同时 能够
  • JUnit测试中 XXL-JOB java.lang.InterruptedException: sleep interrupted

    当线程在活动之前或活动期间处于正在等待 休眠或占用状态且该线程被中断时 xff0c 抛出该异常 产生原因是 xff1a 使用JUnit测试xxlJob对应的excute方法时 xff0c 同时启动了xxl job对应的注册心跳线程 xff0
  • Java 后台 google地图通过经纬度寻找地址

    源代码 根据经纬度获取地址 64 param longitude 64 param latitude 64 return public static String getGoogleAddressBylatlng double latitu
  • JSP 分页(二) ----异步一览列表和分页

    前面写的那个分页主要用于前台网页一览列表的展示 xff0c 每次点击下一页时将要刷新整个页面的数据 xff0c 下面的这个分页将克服上面的分页的问题 xff0c 只刷新页面中一部分代码 xff0c 比方说页面的某一个div层 xff0c 其
  • Hibernate SQLQuery 返回List<Bean>结果集

    Hibernate hql查询语句 xff1a list 61 getHibernateTemplate getSessionFactory getCurrentSession createQuery hql list Hibernate
  • Mysql时间戳转Java时间戳

    MySQL 时间戳和Java返回的时间戳是不一样的 例如 当前时间是 2014 08 04 10 42 55 204000 使用mysql时间戳函数UNIX TIMESTAMP 返回的结果为 1407120175 204000 使用Java
  • java实现统计输入一行string中统计其中各个字符出现的次数

    方法 xff1a 通过数组ArrayList实现 代码包括两个文件 1 保存统计的字符和其出现次数的对象1 package codeSHP public class Object01 char c int count public Obje
  • 【QT】如何给QT程序设置图标和软件名

    在MainWindow的构造函数中使用以下两个方法即可设置软件名和图标 span class token keyword this span span class token operator gt span span class toke
  • Java List<Bean> 分组转换

    1 什么是List lt Bean gt 分组转换 请看如下数据结构 xff0c getter and setter 方法省略 待分组数据结构 public class CommuneResourceBean implements java
  • DB2递归函数返回TABLE对象 和 Mysql递归函数返回Varchar类型

    DB2数据库中 1 使用TABLE对象构建临时表 values 34 1 34 34 a 34 34 2 34 b 34 34 3 34 34 c 34 34 4 34 34 d 34 34 e 34 34 f 34 select from
  • SHELL命令(180701)

    shell命令 1 关机halt reboot poweroff 2 帮助手册 man 3 目录 xff0c 文件操作 xff1a Linux采用的文件是ext3 xff08 树形结构 xff09 3 1路径表示法 绝对路径 xff1a x
  • RabbitMQ——调优参数

    前言 前面几篇文章讲述了rabbitmq消息存储的相关原理 xff0c 也提到了有些参数可以进行配置 这些配置参数的微调在不同的场景中会有不同的效果 本文对其中一些参数进行说明 xff0c 同时以实测数据结合性能分析工具进行剖析 相关参数说
  • Python之turtle.circle()函数理解

    turtle circle 函数 定义 xff1a turtle circle radius extent 61 None 作用 xff1a 根据半径radius绘制extent角度的弧形 参数 xff1a radius xff1a 弧形半
  • 高精度乘法(C++实现)

    算法分析 1 C 43 43 不支持大数运算 xff0c 故而引入高精度算法 2 高精度乘法将大数以字符串形式输入 xff0c 然后拆分转换为一位一位的整数 xff0c 之后按照小学的竖式运算方法完成编码 xff08 注意 xff1a 字符
  • 在RStudio中安装packages时的“... install from sources ...”问题解决方法

    问题描述 在RStudio中安装packages时出现弹窗提示 xff1a Do you want to install from sources the packages which need compilation 解决办法 选择 NO
  • 排列组合之插板法

    算法解析 插板法的模型 xff1a m个相同的元素 xff0c 分给n个不同的空间里 xff0c 每个空间至少1个 xff0c 有多少种方法 xff1f O 表示元素 xff0c 表示隔板 xff0c xff0d 表示间隔 xff0c 如果

随机推荐

  • cin.getline() 函数用法

    函数用法 接收一个字符串并输出 xff08 可含空格 xff09 参数详解 1 cin getline 函数的完整形式有三个参数 xff1a cin getline 字符数组名 字符个数 结束标志 注意 xff1a 若指定参数 字符个数 为
  • Matlab以分数形式显示运算结果并输出

    问题描述 已知矩阵P的内容如下 xff1a 1 3 1 3 1 3 0 1 2 1 2 0 0 1 4 1 4 0 1 2 0 1 2 0 1 2 利用Matlab编程求P P的值 xff0c 并以分数形式显示运算结果 程序代码 forma
  • Visual Studio Code 常用快捷键

    功能快捷键跳转到定义F12往回跳转Ctrl 43 Alt 43 往前跳转Ctrl 43 Shift 43 注释 取消注释Ctrl 43 搜索Ctrl 43 F替换Ctrl 43 H在文件中搜索Ctrl 43 Shift 43 F变量重命名F
  • LaTeX中保留字符 # $ % ^ & _ { } \ 的输入方法

    LaTeX保留字符 常见的LaTeX保留字符有 xff1a amp backslash 在 LaTeX 中输入它们的命令是 xff1a documentclass UTF8 article usepackage ctex begin doc
  • 蓝桥杯:长草 ← DFS

    题目来源 https www lanqiao cn problems 149 learning 问题描述 小明有一块空地 xff0c 他将这块空地划分为 n 行 m 列的小块 xff0c 每行和每列的长度都为 1 小明选了其中的一些小块空地
  • 利用数组模拟栈,实现逆序输出。

    利用STL stack实现逆序输出的代码 在算法竞赛中 xff0c 利用STL stack实现逆序输出 xff0c 特别好理解 STL stack 的官方帮助文档详见 xff1a https cplusplus com reference
  • 算法竞赛中,sort()函数的常见用法。

    知识点 虽然我们已经学习了诸如快速排序 桶排序 基数排序 插入排序 选择排序等众多的排序算法 xff0c 但在算法竞赛中 xff0c 如需要进行排序 xff0c 我们一般 不会去重复造轮子 xff0c 即去实现某种排序算法后再使用 xff0
  • Android 打印调用栈的方法

    1 Java层调用栈打印 xff1a xff08 1 xff09 打印本地调用堆栈 Log i TAG Log getStackTraceString new Throwable 打印本地调用堆栈 xff08 2 xff09 打印远程调用堆
  • 利用gnome美化Ubuntu18.04

    先上最终的效果图 xff1a 首先需要安装gnome软件 sudo apt install gnome tweak tool 安装好后在terminal中输入 gnome tweaks 进入优化软件 软件里自带有一些主题和图标等 xff0c
  • 软件项目管理0712:干系人管理

    软件项目管理0712 xff1a 干系人管理 xff08 软件项目管理中最复杂的内容 xff09 这个题目是个大课题 xff0c 只谈一些自己的经验 xff0c 并不完整 xff0c 有很多缺漏 xff0c 在以后的工作中慢慢的完善 项目
  • 【JVM学习笔记】JVM内存区域定义与内存结构

    目录 定义和说明JVM内存区域的定义内存区域说明堆说明非堆 方法区说明堆栈的区别HotSpot虚拟机 JVM线程独占内存程序计数器 xff1a Program Counter RegisterJava虚拟机栈 xff1a Java Virt
  • 【自媒体营销神器】一键自动下载短视频并分发至长视频平台脚本开源展示

    项目语言 xff1a Python 开发历时 xff1a 一个月 为什么要开源 xff1a Those whom God wishes to destroy he first makes mad 用到的库 xff1a 首先是项目展示环节 x
  • 搞懂bashrc

    1 bashrc是什么 shell 是给电脑发送指令的地方 xff08 命令行 xff09 xff0c bash 是 Bourne Again Shell 的缩写1 我们在 Ubuntu 打开的命令行界面一般都是 bash xff0c 每次
  • powershell 解压RAR文件(简易版)

    01 前言 为啥要写这个 xff0c 因为可能有些特殊的环境无法使用RAR的解压软件 xff0c 因而动手找了一个库然后写了这个脚本 xff0c 希望有帮助 02 正文 准备 xff1a 第三方的dll SharpCompress xff0
  • 改变 Gnome Terminal 的默认大小

    Ubuntu 中 xff0c Gnome Terminal 的默认大小是 80列 xff0a 24行 xff0c 这是文本模式下的标准尺寸 对于图形界面环境而言 xff0c 默认的大小就不太适合了 如果不满意 Gnome Terminal
  • 主祷文

    主 祷 文 我们在天上的父 xff0c 愿人都尊你的名为圣 愿你的国降临 愿你的旨意行在地上 xff0c 如同行在天上 我们日用的饮食 xff0c 今日赐给我们 免我们的债 xff0c 如同我们免了人的债 不叫我们遇见试探 xff0c 救我
  • 一个失败的程序员

    一个失败的程序员 第一次写博客 xff0c 看了别人的很久 xff0c 也想了很久 xff0c 觉得无论文笔有多不好 xff0c 分享的内容有多糟糕 xff0c 都应该有这个勇气迈出第一步 xff0c 记录生活 抒写回忆 xff0c 等到回
  • H5新增标签及Tab切换水平垂直居中

    1 结构标签 xff08 1 xff09 section xff1a 独立内容区块 xff0c 可以用h1 h6组成大纲 xff0c 表示文档结构 xff0c 也可以有章节 页眉 页脚或页眉的其他部分 xff1b xff08 2 xff09
  • android构建工具gradle基础知识

    1 gradle概述 gradle是一个开源的通用构建工具 xff0c 可以构建几乎任意类型的产物 针对不同的场景 xff0c gradle使用不同的插件和DSL申明配置来共同完成构建 gradle有如下几个特点 xff1a 高性能基于jv
  • Kali linux 2016.2(Rolling)安装之后的常用配置

    转发 xff1a https www cnblogs com zlslch p 6047913 html 前言 使用默认的Kali Linux设置来学习是可以的 xff0c 但是我们通常要修改系统的一些基本设置 xff0c 来最大化使用Ka