Linux简介

Kali Linux是基于debian的发行版。

image-20220818094012557

Linux目录结构

image-20220818094044556
/:根目录,每一个文件和目录都从这里开始。只有root用户具有该目录下的写权限。
/bin:用户二进制文件,包含二进制可执行文件。系统的所有用户使用的命令都设在这里,例如:ps,ls,ping,grep,cp等。
/boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
/dev :设备文件,dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。
/etc:这个目录用来存放所有的系统管理所需要的配置文件和子目录。
/home:用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
/lib:这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
/opt:可选的附加应用程序,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库就可以放到这个目录下。默认是空的。
/root:该目录为系统管理员,也称作超级权限者的用户主目录。
/sbin:s就是Super User的意思,系统二进制文件,在这个目录下的linux命令通常由系统管理员使用。
/usr:这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。
/usr/bin:系统用户使用的应用程序。
/usr/sbin:超级用户使用的比较高级的管理程序和系统守护程序。
/tmp:这个目录是用来存放一些临时文件的。
/var:这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。

Kali配置

用户配置

sudo apt update
sudo su
sudo passwd root

linux网络配置文件详解(设置固定IP)

eth0,eth1,eth2……代表网卡一,网卡二,网卡三……

lo代表回环地址127.0.0.1,即localhost

如果不想通过DHCP随机分配ip地址(当IP租期一过就会重新分配),就需要通过修改网络配置文件,改为固定的IP,文件所在目录如下:

==> centos的网络配置文件在/etc/sysconfig/network-scripts目录下

==> ubuntu的网络配置文件在/etc/network目录下

centos

配置文件位置:/etc/sysconfig/network-scripts/ifcfg-eth0
1. DEVICE=eth0 网卡的名字
2. HWADDR=00:0c:29:90:89:d9 HWADDR HardWare Address 硬件地址 MAC地址
3. TYPE=Ethernet 网络类型 以太网
4. UUID=ae779ae6-044d-43d5-a33b-48c89e8de10e #UUID 做到系统中独一无二。
5. ONBOOT=yes BOOT ON ? 在开机或重启网卡的时候是否启动网卡
6. NM_CONTROLLED=yes 是否受network程序管理
7. BOOTPROTO=none 网卡是如何获取到ip地址 网卡获取ip地址的方式
  a. dhcp 自动获取ip地址
  b. none 固定的ip地址
  c. static 固定的ip地址
8. IPADDR=10.0.0.100 IPADDR ip地址
9. NETMASK=255.255.255.0 子网掩码 决定这个局域网中最多有多少台机器
10. GATEWAY=10.0.0.2 网关 整个大楼的大门
11. USERCTL=no 普通用户是否能控制网卡
12. /etc/resolv.conf 配置DNS 网卡配置文件的DNS优先于/etc/resolv.conf
13. DNS 域名解析器 阿里的域名解析器:223.5.5.5 223.6.6.6

#重启网卡命令(centos)
/etc/init.d/network restart
#或者
nmcli c reload

例子:
HWADDR=00:0c:29:2d:d7:44
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
IPADDR=192.168.22.11
PREFIX=24
GATEWAY=192.168.22.1
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens37
UUID=a18a03de-36a2-36a2-8514-0232129b08b0
ONBOOT=yes
AUTOCONNECT_PRIORITY=-999

ubuntu

IP
#查看自己的网卡编号
ip a
#配置网卡静态或者动态IP:
vim /etc/network/interfaces
#配置DNS:
vim /etc/resolv.conf
vim /etc/systemd/resolved.conf
#重启服务
service networking restart
service network-manager restart
#或者--建议使用,新版的操作
systemctl restart network.service
#自动获取IP(在固定IP模式下不生效):
dhclient
#启动网卡:当ifconfig后,只看到lo网卡时,那说明eth0网卡,并没有启动,这个时候使用启动网卡的命令
ifconfig eth0 up
#配置静态IP:/etc/network/interfaces
auto lo # lo接口会在系统启动时自动配置
iface lo inet loopback # 将lo接口设置为一个本地回环(loopback)地址

auto eth0
iface eth0 inet static
address 192.168.1.228
netmask 255.255.255.0
gateway 192.168.1.1

## 动态获取IP配置方法:
auto ens33 # ens33接口会在系统启动时自动配置
iface ens33 inet dhcp
Ubuntu20.04 LTS版本修改DNS

修改 /etc/systemd/resolved.conf 文件,在其中添加dns信息

vim  /etc/systemd/resolved.conf
DNS=114.114.114.114 192.168.10.213 192.168.22.1 192.168.33.1

#可提供的DNS服务器
nameserver 223.5.5.5
nameserver 192.168.10.213
nameserver 192.168.22.1
nameserver 192.168.33.1
nameserver 8.8.8.8

在ubuntu终端中依次执行如下命令:

systemctl restart systemd-resolved
systemctl enable systemd-resolved
mv /etc/resolv.conf /etc/resolv.conf.bak
ln -s /run/systemd/resolve/resolv.conf /etc/
#原本所谓的/etc/resolv.conf文件就是指向/run/systemd/resolve/resolv.conf的软链接

再查看cat /etc/resolv.conf文件就可以看到新的dns信息已经写入其中了。

最后重启NetworkManager:

systemctl restart NetworkManager

设置APT源

一键换源

bash <(curl -sSL https://linuxmirrors.cn/main.sh)

手动换源

cp /etc/apt/sources.list /etc/apt/sources.list.bak
vim /etc/apt/sources.list
apt-get update
apt-get clean
#中科大
deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
#阿里云
deb http://mirrors.aliyun.com/kali kali-rolling main non-free contrib
deb-src http://mirrors.aliyun.com/kali kali-rolling main non-free contrib

APT使用

apt-get & apt

apt-get 可以从认证软件源下载软件包及相关信息,以便安装和升级软件包,或者用于移除软件包。在这些过程中,软件包依赖会被妥善处理。

常用命令

update - 取回更新的软件包列表信息
upgrade - 进行一次升级
install - 安装新的软件包(注:软件包名称是 libc6 而非libc6.deb)
reinstall - Reinstall packages (pkg is libc6 not libc6.deb)
remove - 卸载软件包

apt 与 apt-get的区别与解释

简单来说就是:apt = apt-get、apt-cache 和 apt-config 中最常用命令选项的集合。
  • 虽然 apt 与 apt-get 有一些类似的命令选项,但它并不能完全向下兼容 apt-get 命令。也就是说,可以用 apt 替换部分 apt-get 系列命令,但不是全部。
  • apt 可以看作 apt-get 和 apt-cache 命令的子集, 可以为包管理提供必要的命令选项。
  • apt-get 虽然没被弃用,但作为普通用户,还是应该首先使用 apt 。
apt 命令 取代的命令 命令的功能
apt install apt-get install 安装软件包
apt remove apt-get remove 移除软件包
apt purge apt-get purge 移除软件包及配置文件
apt update apt-get update 刷新存储库索引
apt upgrade apt-get upgrade 升级所有可升级的软件包
apt autoremove apt-get autoremove 自动删除不需要的包
apt full-upgrade apt-get dist-upgrade 在升级软件包时自动处理依赖关系
apt search apt-cache search 搜索应用程序
apt show apt-cache show 显示装细节

当然,apt 还有一些自己的命令:

新的apt命令 命令的功能
apt list 列出包含条件的包(已安装,可升级等)
apt edit-sources 编辑源列表

需要大家注意的是:apt 命令也还在不断发展, 因此,你可能会在将来的版本中看到新的选项。

Linux中apt与apt-get命令的区别与解释

设置中文

#安装中文字体
apt-get install xfonts-intl-chinese
apt-get install ttf-wqy-microhei
#设置语言
dpkg-reconfigure locales
#进入图形界面,选中 en_US.UTF-8 UTF-8 和 zh_CN.UTF-8 UTF-8 并将 zh_CN.UTF-8 选为默认。(空格是选择,tab是切换, * 是选中)
重启
reboot

ubuntu清理空间技巧

包含【系统日志、缓存、无用包、内核、VScode、conda、snap、pip】

(19条消息) ubuntu清理空间技巧 包含【系统日志、缓存、无用包、内核、VScode、conda、snap、pip】_ubuntu 清理空间_CyberTorch的博客-CSDN博客

1. 检查磁盘使用情况

  1. 使用 df 命令:

    df -h

    这个命令会显示文件系统的磁盘空间使用情况。-h 参数让输出更易于阅读。

  2. 使用 du 命令:

    du -sh /*

    这个命令会估算 / 目录下每个子目录的磁盘使用量。-s 参数让 du 只显示总计,-h 参数让输出更易于阅读。

2. 找出占用空间较大的文件和目录

  1. 使用 ncdu 命令:
    如果 ncdu 未安装,你可以使用 sudo apt install ncdu 来安装它。

    ncdu /

    ncdu 是一个基于磁盘使用情况的分析工具,它可以递归地检查目录,并提供一个交互式界面来浏览文件和目录。

  2. 使用 find 命令:

    find / -type f -size +100M

    这个命令会找出 / 目录下所有大于100MB的文件。

3. 清理空间

  1. 清理日志文件:
    日志文件可能会占用大量空间。你可以使用 logrotate 命令来压缩旧日志文件:

    sudo logrotate -f /etc/logrotate.conf
  2. 删除旧的内核:
    旧的内核版本可能会占用空间。使用以下命令删除它们:

    sudo apt autoremove --purge
  3. 清理缓存:

    sudo apt clean
  4. 删除未使用的包:

    sudo apt autoclean
  5. 删除临时文件:

    sudo rm -rf /tmp/*
  6. 清理 Docker 容器、镜像和卷:
    如果你使用 Docker,可以删除未使用的容器、镜像和卷:

    sudo docker system prune
  7. 检查和清理个人目录:
    有时候个人目录中的文件也会占用大量空间。检查用户的主目录,特别是下载文件夹、视频和音乐文件夹。

  8. 使用 zerofree 清理未使用的空间:
    对于有磨损均衡的闪存设备,你可以使用 zerofree 来清理未使用的空间。

ssh远程登陆

设置 SSH 通过密钥登录 | 菜鸟教程 (runoob.com)

refer

Kali工具:

其他: