1、安装 tigervncserver yum install tigervnc-server tigervnc-server-module 2、拷贝配置文件 cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service 3、进入到配置文件目录 cd /etc/systemd/system 4、修改配置文件 vim vncserver@:1.service 配置文件内容为: [Unit] Description=Remote desktop service (VNC) After=syslog.target network.target [Service] Type=forking User=root ExecStart=/usr/bin/vncserver :1 -geometry 1280x1024 -depth 16 -securitytypes=none -fp /usr/share/X11/fonts/misc ExecStop=/usr/bin/vncserver -kill :1 [Install] WantedBy=multi-user.target 5、启用配置文件 systemctl enable vncserver@:1.service 6、设置登陆密码 vncpasswd 7、启动 vncserver systemctl start vncserver@:1.service 8、启动状态查看 systemctl status vncserver@:1.service 9、查看端口状态 netstat -lnt | grep 590* 10、查看报错信息 grep vnc /var/log/message...
阡陌 发布的文章
阡陌ARM 开发板使用 NFS 挂载 Ubuntu 文件夹
采用 NFS 实现远程挂载,ARM 开发板可以直接运行主机上的程序,而不需要下载到开发板上。 1、查看开发板 Linux 内核是否支持 NFS 执行 cat /proc/filesystems, 若有一行为 nodev nfs 则开发板 Linux 内核支持 NFS,反之需要配置内核;也可以使用动态模块的形式编译。 2、主机安装 nfs 服务 sudo apt-get install nfs-kernel-server 配置 nfs 输出目录: vim /etc/exports 在该文件中添加一行: /home/user *(rw,sync,no_root_squash) # 根据实际情况修改 /home/user 为想要的路径就行了 * 表示任意 IP 地址的主机,如果是 192.168.1.100,就表示只允许 192.168.1.100 挂载。 rw: 可擦写的权限 ,ro: 只读的权限。 sync: 资料同步写入到内存与硬盘当中 ;async: 资料会先暂存于内存当中,而非直接写入硬盘。 no_root_squash:登入 NFS 主机使用分享目录的使用者,如果是 root 的话,那么对于这个分享的目录来说,他就具有 root 的权限!root_squash:在登入 NFS 主机使用分享之目录的使用者如果是 root 时,那么这个使用者的权限将被压缩成为匿名使用者,通常他的 UID 与 GID 都会变成 nobody 那个系统账号的身份。 主机启动NFS服务: sudo service nfs start # 或者 sudo service nfs-kernel-server restart 3、在开发板上挂载主机上的文件夹 mkdir /mnt/nfs mount -t nfs -o nolock 172.16.9.93:/home/matt /mnt/nfs 172.16.9.93 是主机 IP,/home/user/test 是主机共享目录,/mnt 表示将该共享目录挂载到 ARM 开发板 /mnt 目录下。 错误: mount: wrong fs type, bad option, bad superblock on... 解决方法: sudo apt-get install nfs-commo...
Ubuntu 16.04 FTP 服务程序 vsftpd
安装: sudo apt install vsftpd 其配置文件为 /etc/vsftpd.conf write_enable=YES #允许写文件操作 useradd -M -s /sbin/nologin ftp1 #创建一个本地 ftp 用户 ftp1 sudo passwd ftp1 sudo service vsftpd restart 530 Login incorrect : 修改 /etc/pam.d/vsftpd: 将 auth required pam_shells.so 修改为 auth required pam_nologin.so 或者将 auth required pam_shells.so 注释 创建虚拟用户: 虚拟用户的文件读写需要一个真实用户配合,先创建一个真实用户(在配置文件中关联guest_username) sudo useradd -m -d /home/vsftpd vsftpd sudo usermod -s /sbin/nologin vsftpd 启用匿名用户 anonymous 匿名用户使用的是系统的 ftp 用户 sudo vim /etc/vsftpd.conf write_enable=YES #允许写文件操作 anonymous_enable=YES anon_upload_enable=YES #匿名用户上传使能 anon_mkdir_write_enable=YES #匿名用户创建文件夹使能 #anon_root=/home/ftp #匿名用户根目录,默认为/srv/ftp sudo service vsftpd restart 关于根目录写权限: 从 2.3.5 之后,vsftpd 增强了安全检查,如果用户被限定在了其主目录下,则该用户的主目录不能再具有写权限了!如果检查发现还有写权限,就会报错误: vsftpd: refusing to run with writable root inside chroot () 解决方法:去除用户主目录的写权限 chmod a-w /srv/ftp 在根目录创建一个ftp用户可以写的目录 sudo mkdir /srv/ftp/public sudo chmod 777 /srv/ftp/public 或者修改配置 allow_writeable_chroot=YES #允许根目...
CentOS 安装 VirtualBox
1、添加源 wget -P /etc/yum.repos.d http://download.virtualbox.org/virtualbox/rpm/el/virtualbox.repo 2、安装 yum install VirtualBox yum install dkms kernel-devel kernel-headers /sbin/vboxconfig #重新编译 VirtualBox 内核 3、将用户加入 vboxusers 组 sudo groupadd -G vboxusers -a root 4、开机自启动: vi /etc/rc.d/rc.local VBoxManage startvm 虚拟机名字 -type vrdp & chmod +x /etc/rc.d/rc.local 5、其他命令 VBoxManage list vms #列出虚拟机 VBoxManage list runningvms #列出运行中的虚拟机 VBoxManage controlvm 虚拟机名字 acpipowerbutton # 关闭虚拟机,等价于点击系统关闭按钮,正常关机 VBoxManage controlvm 虚拟机名字 poweroff # 关闭虚拟机,等价于直接关闭电源,非正常关...
Linux SMB 服务 Samba
Samba 是在 Linux 和 UNIX 系统上实现 SMB 协议的一个免费软件,由服务器及客户端程序构成。Linux 下的 Samba 服务主要用于 Windows 平台和 Linux 平台下载局域网内实现文件共享。 安装: apt-get update apt-get install samba 创建匿名共享文件夹: mkdir /data/share chmod 777 /data/share 配置: vim /etc/samba/smb.conf 在最后加上: [share] comment = share folder browseable = yes path = /data/share public = yes available = yes writable = yes guest ok = yes #重启服务 /etc/init.d/samba restart 或 service samba restart 如果碰巧你的 Win10 账户名与 Linux 中的账户名相同(不分大小写),那么 Win10 在访问 Samba 时会使用你的账户,如果密码不同,则提示你输入凭证,如果密码碰巧相同,则会直接以同名的 Linux 账户登录 samba,你创建的文件或文件夹都属于你的这个账户。要解决这个问题,可以设置 Win10 的 Windows 凭据,添加一个 nobody 空密码的账户...
智能卡
智能卡(Smart Card)是一种内嵌有微芯片的塑料卡,通常与信用卡大小相同。这种卡配备了 CPU、RAM 和 I/O,能够自行处理数量较多的数据而不会干扰到主机 CPU 的工作。此外,智能卡还可以过滤错误的数据,以减轻主机 CPU 的负担。它适应于端口数目较多且通信速度需求较快的场合。 智能卡的标准主要包括 ISO7816 系列。这些标准详细规定了智能卡的物理特性、触点尺寸和位置、电信号和传输协议等关键方面。例如,ISO7816-1 规定了带触点集成电路卡的物理特性,如触点的电阻、机械强度、热耗、电磁场、静电等;ISO7816-2 则规定了 ID-1 型 IC 卡上每个触点的尺寸、位置和任务分配。 类别 除了 PSAM(销售点安全模块)和 ESAM(嵌入式安全模块)之外,智能卡还包括其他多种类型。根据应用领域和功能,智能卡主要可以划分为以下几种: 金融卡:也称为银行卡,包括信用卡和现金卡两种。信用卡可以在消费支付时按预先设定额度透支资金,而现金卡则作为电子钱包或电子存折,但不能透支。 非金融卡:也称为非银行卡,涉及范围十分广泛,实际包含金融卡之外的所有领域,诸如电信、旅游、教育和公交等等。 交通卡:这种卡主要应用于公共交通领域,如地铁、公交等。 政府应用卡:如社保卡等,现在应用较广泛。 另外,根据镶嵌芯片的不同,智能卡还可以分为存储器卡、逻辑加密卡和 CPU 卡。存储器卡功能简单,没有(或很少有)安全保护逻辑,但价格低廉,开发使用简便,存储容量增长迅猛,因此多用于某些内部信息无需保密或不允许加密的场合。逻辑加密卡有一定的安全保证,多用于有一定安全要求的场合。而 CPU 卡则具有很高的数据处理和计算能力以及较大的存储容量,同时采取了多层次的安全措施,因此应用的灵活性、适应性较强,已成为一卡多用及对数据安全保密性特别敏感场合的最佳选择。 形态 标准卡、SIM卡、双列直插(ESAM)等 通信接口 ISO7816-3 标准的智能卡接口是需要外部提供时钟(也有内部时钟的)和采用单线半双工串行通信的接口。 加密算法 通常广泛支持 3DES 算法,也有内嵌国密 SM1 算法的(如电力上用的 ESAM 芯片、CPU 卡等)。 功能 信息存储(内置EEPROM)、秘钥管理、权限认证等。 驱动电路 可以直接使用带有智能卡模式的 USART 通信,USART_CK 接 CLK,USART_TX(智能卡模式收发在内部通过SW_RX连接)接 IO。 如果要适应更多卡,比如不同的电压,或为电路提供更多的安全保障(短路等),通常会选择专用的接口芯片装在卡与 MCU 之间,比如使用 ST8024,更具体的可以研究一下 8024 的手册看...
TortoiseGit 合并过程
将本地的修改 Commit 后,push 到服务器时提示失败。这是可能是因为本地的版本落后于远程版本,服务器上的版本已经被别人抢先一步更新了。这个时候就要做一下合并操作了。所谓的合并可以是合并同一分支(比如上述往 master 分支)的不同版本,也可以是合并不同分支(比如要将 dev 分支合并到 master 分支),查看同一个文件不同版本间的差异并选择两者中的一种或发现新的问题作出新的改动,最后再 commit、push 的过程。 先 Pull,由于我们已经知道本地与服务器两个版本是不同的,所以已经预料到会有问题。 Pull 的时候会自动合并,由于 git 访问不了公司加了密的文件,所以文本文件被当成了二进制文件,自动合并不起作用,只能手动合并。不过即使能正常自动合并,也可能合并出错,毕竟机器还不能完全理解人的意图。 本地文件的图标也会发生变化,感叹号的文件就是有冲突的文件: 点击窗口或菜单中的 Resolve,开始解决冲突的过程。 弹出来冲突文件列表: 由于我使用了 Beyond Compare 做第三方比较/合并工具,所以双击文件就打开了 BC: 同时自动生成了三个文件(应该是 git 生成的,而不是 bc,用内置合并工具时也会生成这几个文件): 编辑器打开冲突文件 .gitignore,可以看到自动合并的痕迹: <<<<<<< HEAD 与 ======= 之间的内容是本地主分支上的内容,>>>>>>> c7877cc893ca1171b829ac7f48187a97befacfdd 是 远程主分支上最新版本 c7877 的内容。两个内容一样,都是相对于上一版本增加的内容。 BC 上面三列分别是 BASE、LOCAL、REMOTE,分别表示上一个版本(感觉可能是共同的祖先),本地版本,远程版本,这三个内容是只读的,改不了。下面的窗口是合并操作的输出,并不是工作区冲突的那个文件的实际内容。 把所有冲突解决掉,commit 然后 push 到服务器。 取消合并: 在 commit 前可以取消合并操作,以使工作区的文件退回到本地最新版本的状态。...
白光 T12 烙铁头
T12 烙铁头也叫 T12 发热芯、T12 焊咀,是日本白光公司(Hakko)推出的 FX-951 拆消静电电焊台标配的烙铁头型号名称。T12 烙铁头属复合型焊咀,是发热芯、温度传感器、烙铁头三个部件的复合体。 T12 烙铁头的特点是:传感器充分前置,对温度变化敏感度高;发热芯部件安装在小体积的烙铁头内部,热量损失极小。 热电偶是一种感温元件。它直接测量温度,并把温度信号转换成热电动势信号, 通过电气仪表转换成被测介质的温度。热电偶测温的基本原理是两种不同成份的材质导体组成闭合回路,当两端存在温度梯度时,回路中就会有电流通过,此时两端之间就存在电动势——热电动势,这就是所谓的塞贝克效应(Seebeck effect)。两种不同成份的均质导体为热电极,温度较高的一端为工作端,温度较低的一端为自由端。 T12 内部可视为发热丝串联了热电偶,通电时加热,断电时测温。所以一般 T12 都是使用 PWM 控制,高电平驱动 MOS 加热,低电平时 MOS 断开运放放大热电偶电动势测得温度,后反馈调节 PWM 占空比实现恒温。运放放大的是热端的电动势,对应的温度是烙铁头的温度 + 室温,所以要减去室温才是真正烙铁头的温度,这一过程就是所谓的冷端补偿。T12 用的是 K 型热电偶。(据说接近 N 型,后续验证一下看看。) K 型热电偶是目前用量最大的廉金属热电偶,其用量为其他热电偶的总和。K 型热电偶丝直径一般为 1.2mm~4.0mm。正极(KP)的名义化学成分为:Ni : Cr = 90 : 10(镍铬合金),负极(KN)的名义化学成分为:Ni : Si = 97 : 3(镍硅合金),其使用温度为 -200℃ ~ 1300℃。K 型热电偶具有线性度好,热电动势较大,灵敏度高,稳定性和均匀性较好,抗氧化性能强,价格便宜等优点,能用于氧化性惰性气氛中广泛为用户所采用。K 型热电偶不能直接在高温下用于硫,还原性或还原,氧化交替的气氛中和真空中,也不推荐用于弱氧化气氛。 圈子里的名词: 白菜白光:用廉价的控制电路 + 二手白光焊嘴 DIY 的烙铁,更高档的还有牛肉白光、鲍鱼白...