内容一:显示本服务器的网卡机器码(MAC)地址
# ifconfig | grep HW
内容二:显示本地网络的网卡机器码(MAC)地址
# arp -n
# ifconfig | grep HW
# arp -n
$ curl 'https://bootstrap.pypa.io/pip/2.7/get-pip.py' > get-pip.py
$ sudo python get-pip.py
$ rm get-pip.py
$ ls /Library/Python/2.7/site-packages/
(补充:这里以 Python 版本是 2.7 为例)
$ which pip2
$ sudo pip2 install --upgrade pip
$ python3
(步骤略)
$ xcode-select --install
(步骤略)
$ curl 'https://bootstrap.pypa.io/pip/get-pip.py' > get-pip.py
$ sudo python get-pip.py
$ rm get-pip.py
$ ls /Library/Python/3.8/site-packages/
(补充:这里以 Python 版本是 3.8 为例)
$ which pip3
$ sudo pip3 install --upgrade pip
(步骤略)
(步骤略)
(步骤略)
rescue login:root
(步骤略)
(
补充:
1) 物理分区可以使用 lsblk 命令、fdisk -l 或 cat /proc/partitions 命令辅助确定
2) 逻辑分区还可以可以使用 pvs 命令、lvs 命令或 lvdisplay 命令辅助确定
)
tty1:rescue:~ # mount <root spartition> /mnt
(
补充:
1) 如果是物理分区,系统的根 “/” 分区就在救援模式的 /dev/ 目录里,例如救援模式的 /dev/sda1
2) 如果是逻辑分区,Rocky Linux & RHEL 的系统根 “/” 分区就是救援模式里的 /dev// 例如救援模式里的 /dev/vg/lv,openSUSE & SLES 的系统根 “/” 分区就是救援模式里的 /dev/mapper/- 例如救援模式里的 /dev/mapper/vg-lv
)
tty1:rescue:~ # mount --rbind /dev /mnt/dev
(
补充:
1) 此时所有对救援模式的 /mnt/dev 目录的访问都会变成对救援模式的 /dev 目录的访问
2) 步骤 4.2、步骤 4.3 和步骤 4.4 也可以用以下命令代替:
tty1:rescue:~ # for i in proc sys dev; do mount --rbind /$i /mnt/$i ; done
)
tty1:rescue:~ # mount --rbind /proc /mnt/proc
(
补充:
1) 此时所有对救援模式的 /mnt/proc 目录的访问都会变成对救援模式的 /proc 目录的访问
2) 步骤 4.2、步骤 4.3 和步骤 4.4 也可以用以下命令代替:
tty1:rescue:~ # for i in proc sys dev; do mount --rbind /$i /mnt/$i ; done
)
tty1:rescue:~ # mount --rbind /sys /mnt/sys
(
补充:
1) 此时所有对救援模式的 /mnt/sys 目录的访问都会变成对救援模式的 /sys 目录的访问
2) 步骤 4.2、步骤 4.3 和步骤 4.4 也可以用以下命令代替:
tty1:rescue:~ # for i in proc sys dev; do mount --rbind /$i /mnt/$i ; done
)
tty1:rescue:~ # mount --rbind /run /mnt/run
(补充:此时所有对救援模式的 /mnt/run 目录的访问都会变成对救援模式的 /run 目录的访问)
tty1:rescue:~ # chroot /mnt
(补充:这里以 /mnt 作为系统根 “/” 目录为例)
bash-4.3# mount -a
bash-4.3# ls
bin boot dev home lib lib64 mnt opt proc root run sbin selinux srv sys tmp usr var
(补充:这里显示的是常见的 Linux 根 “/” 目录 下的目录)
(步骤略)
(
补充:
1) 物理分区可以使用 lsblk 命令、fdisk -l 或 cat /proc/partitions 命令辅助确定
2) 逻辑分区还可以可以使用 pvs 命令、lvs 命令或 lvdisplay 命令辅助确定
)
bash-4.3# grub2-install <disk which GRUB2 in>
bash-4.3# grub2-mkconfig -o /boot/grub2/grub.cfg
bash-4.3# exit
bash-4.3# reboot
如果以上步骤都不起作用,且 /boot 是单独分区的话,则可能是 boot 分区的文件系统损坏,可以尝试以下补充:
1) 重复本文步骤五和之前步骤的内容
2) 将 /boot 目录里的内容全部拷贝出来
3) 取消挂载 /boot 目录的分区
4) 将挂载 /boot 目录的分区重新格式化成 ext4 格式
5) 格式化后分区的 UUID 会改变,所以需要更新 /etc/fstab 文件中挂载 /boot 目录分区的 UUID
6) 将格式化后的分区重新挂载 /boot 目录
7) 将刚刚从 /boot 目录拷贝出来的内容拷贝回 /boot 目录
8) 重复此文的步骤六
(注意:不建议使用 Btrfs 文件系统给 /boot 目录分区)
https://www.suse.com/support/kb/doc/?id=000018770
作者:朱明宇
名称:检测服务器某个端口有没有启动
作用:检测服务器某个端口有没有启动
1. 在此脚本的分割线内写入相应的内容
2. 给此脚本添加执行权限
3. 执行此脚本
4. 如果被检测的端口被启动则会被记录在指定文件里
1. checkport=’7111′ #被检测的端口
2. logfile=’checkportlog.txt’ #记录文件
#!/bin/bash
####################### Separator ########################
checkport='7111'
logfile='checkportlog.txt'
####################### Separator ########################
a=`/sbin/ss -ntulap | grep udp | grep $checkport | awk '{print $7}' | awk -F'"' '{print $2}'`
if [ -n "$a" ];then
echo `date` >> $logfile
echo $checkport >> $logfile
echo `/sbin/ss -ntulap | grep udp | grep $checkport | awk '{print $7}' | awk -F'"' '{print $2}'` >> $logfile
echo >> $logfile
fi
# vim /etc/ssh/sshd_config
将以下内容:
#Banner none
修改为:
Banner eternalcenter
或者:
# sed -i 's/.*Banner.*/Banner eternalcenter/' /etc/ssh/sshd_config
(补充:这里以将 ssh 登录提示信息修改为 eternalcenter 为例)
# systemctl restart sshd