网关
route del default
route add default gw 192.168.2.1
关机
#!/bin/bash
shutdown -h now
## 创建wifi
#!/bin/sh
iwconfig >> /tmp/moi
nmcli radio wifi off
rfkill unblock wlan
# ifconfig wlx7cdd905274b4 10.5.5.1/24 up
sleep 3
create_ap wlp1s0 enp2s0 mwifi 123456
普通用户权限确认
/etc/sudoers 权限确认
kk用户必须有root权限m 不需要密码
root ALL=(ALL:ALL) ALL
kk ALL=(ALL) NOPASSWD: ALL(添加至文件末尾)
关机不需要密码
sudo echo 'moi ALL =(ALL)NOPASSWORD: /sbin/shutdown -h now,/sbin/shutdown' >> /etc/sudoers
串口映射
/etc/udev/rules.d/
权限确认 串口映射确认
陀螺仪 /dev/imu
STM32 /dev/stm32
激光雷达 /dev/laser
示例
KERNEL == "ttyUSB*", KERNELS == "1-4", ATTRS{idVendor}=="10c4", ATTRS{idProduct} == "ea60", MODE:="0777", SYMLINK+="laser"
KERNEL == "ttyUSB*", KERNELS == "1-2", ATTRS{idVendor}=="10c4", ATTRS{idProduct} == "ea60", MODE:="0777", SYMLINK+="imu"
KERNEL=="ttyUSB[0-9]*",MODE="0666"
SUBSYSTEM=="tty",ATTRS{idVendor}=="067b",ATTRS{idProduct}=="2303",SYMLINK+="stm"
SUBSYSTEMS=="usb"
DRIVERS=="cp210x"
ATTRS{authorized}=="1"
ATTRS{bAlternateSetting}==" 0"
ATTRS{bInterfaceClass}=="ff"
ATTRS{bInterfaceNumber}=="00"
ATTRS{bInterfaceProtocol}=="00"
ATTRS{bInterfaceSubClass}=="00"
ATTRS{bNumEndpoints}=="02"
ATTRS{interface}=="CP2102 USB to UART Bridge Controller"
KERNEL == "ttyUSB*", KERNELS == "1-7", ATTRS{idVendor}=="10c4", ATTRS{idProduct} == "ea60", MODE:="0777", SYMLINK+="stmlog"
KERNEL == "ttyUSB*", KERNELS == "1-2", ATTRS{idVendor}=="10c4", ATTRS{idProduct} == "ea60", MODE:="0777", SYMLINK+="imu"
查询串口信息
lsusb -vvv
lsusb
禁止内核自动更新,禁止软件自动升级
1, sudo apt-mark hold linux-image-generic linux-headers-generic
2, sudo apt-mark unhold linux-image-generic linux-headers-generic
查看内核
urname -r
下面这两个都需要设置不自动自动更新
1, cat /etc/apt/apt.conf.d/10periodic, ,
APT::Periodic::Update-Package-Lists "0";
APT::Periodic::Download-Upgradeable-Packages "0";
APT::Periodic::AutocleanInterval "0";
APT::Periodic::Unattended-Upgrade "0";
2, 20auto-upgrades
APT::Periodic::Update-Package-Lists "0";
APT::Periodic::Download-Upgradeable-Packages "0";
APT::Periodic::AutocleanInterval "0";
APT::Periodic::Unattended-Upgrade "0";
3,
sudo systemctl stop apt-daily.service
sudo systemctl stop apt-daily.timer
sudo systemctl stop apt-daily-upgrade.service
sudo systemctl stop apt-daily-upgrade.timer
sudo systemctl disable apt-daily.service
sudo systemctl disable apt-daily.timer
sudo systemctl disable apt-daily-upgrade.service
sudo systemctl disable apt-daily-upgrade.timer
查看硬盘大小
df -h
创建swap 交换空间
sudo touch /swap
sudo dd if=/dev/zero of=/swap bs=1M count=2048
sudo mkswap /swap
sudo swapon /swap
sudo sh -c 'echo "/swap swap swap defaults 0 0" >> /etc/fstab'
查看时间
#shell 脚本获取时间
ctime=$(date "+%Y%m%d-%H%M")
log_path="/home/moi/logdir/"+${ctime}
set time
sudo date -s 08/12/2019
sudo date -s 19:65:33
hwclock -w /写入硬件 避免重启失效
同步时间
function dateSync()
{
dirdate=`date +%Y`-`date +%m`-`date +%d`" "`date +%H`:`date +%M`:`date +%S`
echo 当前时间 ${dirdate}
echo 设置时间格式 如下 date -s \"2021-10-14 15:21:00\" 输入不带字符串的时间
read ctime
sudo date -s "${ctime}"
echo 同步时间到硬件上
sudo hwclock --systohc
}
function dateSyncNetwork()
{
echo 自动同步网络时间
sudo ntpdate cn.pool.ntp.org
sudo hwclock --systohc
date
}
网络
扫描wifi
链接wifi
扫描wifi
iwlist wlp1s0 scanning | grep -i ssid
连接wifi
sudo nmcli device wifi connect Deepblue-office password Shenlan2018 ifname wlp1s0
固定网络端口
+固定本机地址和网口 /etc/network/interface
auto lo
iface lo inet loopback
auto enp1s0
iface enp1s0 inet static
address 192.168.1.10
gateway 192.168.1.1
netmask 255.255.255.0
ssh 可以显示图像
ssh 显示图像
sudo nano /etc/ssh/sshd_config
其中有一行X11Forwarding yes,确保这个是yes,并且去掉#注释。
重启ssh服务:
/etc/init.d/ssh restart
在客户端bash配置/etc/ssh/ssh_config:
vim /etc/ssh/ssh_config
找到找到ForwardAgent yes,ForwardX11 yes,ForwardX11Trusted yes这3个确保是yes,并且去掉#注释。
查看TCP 端口
netstat -ap
关机日志前台打印
step2:修改/etc/default/grub,把GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"改成==>GRUB_CMDLINE_LINUX_DEFAULT=“text”。方便重启和关机的时候看打印。改完后执行sudo update-grub。
防火墙禁用端口
sudo ufw enbale/disable
sudo ufw status
sudo ufw deny #外来访问默认不予许连接
sudo ufw allow 22 #ssh enable
sudo ufw allow 8000 #ssh 网页
sudo ufw allow from 127.0.0.1
加密
openssl enc -e -des3 -pass pass:"srger" -in $tarname -out $tarname.des3
创建系统railway.service
1, 创建一个**.service 的文件脚本
2, 文件内容如下示例
[Unit]
Description=railway
After=network.target #用于指定服务启动的前置条件
[Service]
User=root
ExecStart=/bin/bash /home/railrun/rtcserver/railway.sh
ExecStop=/usr/bin/pkill railway
Restart=always #无论如何都自动重启
RestartSec=5
[Install]
WantedBy=multi-user.target
3 该脚本将 .service 文件拷贝到 /etc/systemd/system/后,重新加载了系统服务项
sudo cp railway.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable railway.service #开机自动启动
# sudo systemctl disable railway.service
sudo service railway start
sudo systemctl status railway.service
https://www.cnblogs.com/mafeng/p/10316351.html
chkconfig --list 查看系统服务列表,以及每个服务的运行级别
chkconfig on 设置指定服务开机时自动启动
ntsysv 以全屏幕文本界面设置服务开机时是否自动启动
脚本内容
railway.sh
#加载环境变量
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/home/railrun/rtcserver/bu
cd /home/railrun/rtcserver/bu/
./railway_monitor
网络重启
service network
用法:/etc/init.d/network {start|stop|restart|reload|status}
shell 打印颜色
#! /bin/bash
function echo_red()
{
echo -e "\033[31m${@}\033[0m"
}
function echo_green()
{
echo -e "\033[32m${@}\033[0m"
}
function echo_yellow()
{
echo -e "\033[33m${@}\033[0m"
}
function echo_blue()
{
echo -e "\033[34m${@}\033[0m"
}
function echo_purpel()
{
echo -e "\033[35m${@}\033[0m"
}
function echo_skyeblue()
{
echo -e "\033[36m${@}\033[0m"
}