LINUX问题与知识点笔记

这篇笔记涵盖了Linux系统的多个方面,包括解决问题如subprocess报错处理,Ubuntu快捷方式创建,vsftpd与samba服务器配置,nfs安装,以及在Jetson Nano上设置NVIDIA L4T。还详细讲解了内核模块的使用、编译,以及如何更换内核、设置git、SSH连接GitHub、创建APT仓库等实用技巧。同时,笔记也提到了通过USB以太网 gadget实现设备间的网络连接,以及网络配置、静态IP和DNS设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.subprocess new pre-removal script returned error exit status

进入/var/lib/dpkg/info找到相关文件,删除

2.ubuntu快捷方式

/usr/share/applications/xx.desktop拖到桌面

3.vsftpd配置

#更改vsftpd配置
#1.打开vsftpd配置文件
sudo gedit /etc/vsftpd.conf 
#2.修改如下行
anonymous_enable=NO
local_enable=YES
write_enable=YES
#3.重启vsftpd
/etc/init.d/vsftpd restart
service vsftpd restart

查看网络
netstat -a 查看所有网络设备
netstat -a | grep ftp

3.samba服务器

#1.安装
sudo apt-get install samba

#2.查看samba版本
sudo  smbd --version

#3.检查samba是否运行
systemctl status smbd
systemctl status nmbd
#4.启动samba(开启后samba在139和445端口监听)
sudo systemctl start smbd
sudo systemctl start nmbd

#5.配置文件
sudo gedit /etc/samba/smb.conf
workgroup = WORKGROUP	#值与windows计算机的工作组相同
#文件底部
[home share]	#[root]
	comment = Home pulic Folder # Root Directories
	browseable = yes
	writable = yes
	path = /home/linuxidc/	#共享的目录
	valid users = smb
	;valid users = linuxidc

#6.testparm	测试配置文件是否有语法错误
#7.添加samba用户
smbpasswd -a pm

4.nfs安装

#1.安装
sudo apt-get install nfs-kernel-server
#2.配置
sudo gedit /etc/exports
/tmp *(rw,sync,no_subtree_check,no_root_squash)
/data *(rw,sync,no_subtree_check,no_root_squash)
/home *(rw,sync,no_subtree_check,no_root_squash)
/dir 表示共享的目录
* 表示任意用户访问,可以是ip地址
rw 表示可读可写
sync 同步写磁盘(async 资料会暂存到内存,而不直接写入硬盘)
no_root_squash 表示客户端root用户对该目录具备写权限

#3.启动
/etc/init.d/nfs start/restart	启动和重启nfs服务
sudo exportfs -rv	nfs配置文件直接生效

#4.挂载nfs服务器上的共享目录
mount -t nfs servername:/shared_dir /localdir
mount -t nfs 10.168.1.100:/home /mnt/nfs

#5.查看nfs运行状态
sudo nfsstat

#6.disable ubuntu firewall
sudo ufw disable

nvidia jetson nano : https://docs.nvidia.com/jetson/l4t/index.html#page/Tegra%2520Linux%2520Driver%2520Package%2520Development%2520Guide%2Fgetting_started.html%23wwpID0E0LC0HA

5.最小根文件系统rootfs

mkdir -p etc/init.d
mkdir proc mnt tmp sys root lib

etc/inittab : 
::sysinit:/etc/init.d/rcS
ttySAC0::askfirst:-/bin/sh
::ctrlaltdel:/sbin/reboot
::shutdown:/bin/umount -a -r

etc/init.d/rcS : chmod 777 
#!/bin/sh
#ifconfig eth0 192.168.1.17
mount -a		#mount all /etc/fstab

etc/fstab
#device	point	type	options		dump	fsck	order
proc	/proc	proc	defaults	0	0
tmpfs	/tmp	tmpfs	defaults	0	0

#对于proc等文件系统,这个字段没有任何意义
#defaults = rw|suid|dev|exec|auto|nouser|async...
mkdir dev
sudo mknod dev/console c 5 1
sudo mknod dev/null	c 1 3
sudo mknod dev/ttySAC0 c 204 64
sudo mknod mtdblock0 b 31 0
sudo mknod mtdblock1 b 31 1
sudo mknod mtdblock2 b 31 2
sudo mknod mtdblock3 b 31 3

#cat /proc/devices查看内核注册了哪些设备

#mdev
#udev的简化版本,初始化/dev目录,动态更新,还支持热插拔
#使用mdev需要内核支持sysfs文件系统,为了减少对FLASH的读写,还要支持tmpfs文件系统
#使用时确保CONFIG_SYSFS CONFIG_TMPFS

mount -t tmpfs mdev /dev
mkdir /dev/pts
mount -t devpts devptfs /dev/pts
mount -t sysfs sysfs /sys
echo /bin/mdev > /proc/sys/kernel/hotplug	#设置内核当有设备插拔时调用/bin/mdev
mdev -s						#在/dev目录下生成内核支持的所有设备的节点

etc/fstab
#device	point	type	options		dump	fsck	order
proc	/proc	proc	defaults	0	0
tmpfs	/tmp	tmpfs	defaults	0	0
sysfs	/sys	sysfs	defaults	0	0
tmpfs	/dev	tmpfs	defaults	0	0

etc/init.d/rcS : chmod 777 
#!/bin/sh
#ifconfig eth0 192.168.1.17
mount -a		#mount all /etc/fstab
mkdir /dev/pts
mount -t devpts devpts /dev/pts
echo /sbin/mdev > /proc/sys/kernel/hotplug
mdev 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值