Questions tagged «raspbian»

来自Debian的Raspberry Pi的Linux发行版

7
通过命令行使用gmail发送单行邮件的最简单方法?
使用Raspbian和Ubunntu 16.04 LTS,因此需要通用的Linux解决方案。 要求很简单: 我需要一种从命令行发送单行电子邮件的方法。 我已经为此特定Rpi3设置了一个Gmail帐户,其地址为rpi3abc@gmail.com-没有2FA 因此,现在我需要能够从任何地方(包括cron)发送单线邮件,而无需用户干预。 我也希望它能够发送文本文件。基本上,来自的任何东西stdin。


8
获取网络上设备的名称
我想知道网络上所有设备的名称。我已经尝试了很多在网络上找到的命令,但都没有取得很大的成功,但是没有任何工作像我想要的那样。 基本上,当我输入路由器设置时,可以获得连接到网络的设备名称。我也可以在某些应用程序上获得它,所以我猜它可以以某种方式完成。 我想要一个通过命令行连接到我的Wi-Fi网络的所有设备的名称列表。 谢谢 pi@raspberrypi ~ $ nmap -sP 192.168.4.0/24 Starting Nmap 6.00 ( http://nmap.org ) at 2015-03-05 13:55 UTC Nmap scan report for 192.168.4.1 Host is up (0.0055s latency). Nmap scan report for 192.168.4.2 Host is up (0.42s latency). Nmap scan report for 192.168.4.4 Host is up (0.045s latency). …

2
ppp0 vs wwan0之间的区别
我在RaspberryPi上运行Raspian。 当我插入GSM调制解调器时,我看到两个接口-wwan0和ppp0。 wwan0 即使插入GSM调制解调器但未连接,也存在 ppp0 仅在连接GSM调制解调器时存在 问题 是什么区别wwan0和ppp0,以及为什么我看ppp0除了wwan0? 为什么在建立连接后将IP地址分配给ppp0而不分配wwan0?

2
以编程方式更改密码
在当前版本的Raspian中,我知道可以从命令行更改当前登录用户的密码,如下所示: sudo passwd 然后会提示用户两次输入新密码。这将产生如下输出: Changing password for pi. (current) UNIX password: Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully 我想知道是否有可能以编程方式更改密码,例如从Shell脚本更改密码。 我正在尝试制作一个配置脚本以部署在我的Raspberry Pis上,并且我不想手动为其输入新密码。



1
无法启用用户服务。“无法获得D-Bus连接:连接被拒绝”支持
以用户身份运行任何systemd命令时出现此错误: admin@Xroklaus:~ $ systemctl --user list-units Failed to get D-Bus connection: Connection refused 没有用户参数,该命令运行正常。 admin@Xroklaus:~ $ systemctl list-units UNIT LOAD ACTIVE SUB DESCRIPTION proc-sys-fs-binfmt_misc.automount loaded active waiting Arbitrary Executable File Formats File System Automount Point sys-devices-platform-soc-3f201000.serial-tty-ttyAMA0-hci0-rfkill1.device loaded active plugged /sys/devices/platform/soc/3f201000.serial/tty/ttyAMA0/hci0/rfkil sys-devices-platform-soc-3f201000.serial-tty-ttyAMA0-hci0.device loaded active plugged /sys/devices/platform/soc/3f201000.serial/tty/ttyAMA0/hci0 ... To show all installed …

3
在systemd中禁用init.d脚本
我在raspbian安装中将init系统从sysvinit更改为systemd。安装可以正常启动,但是现在在启动时启动lightdm。我不希望它那样做。 我注意到lightdm.service启动时已启动。通过以下方式停止服务 systemctl stop lightdm.service 工作良好。 systemctl disable lightdm.service 应该禁用它,但是给我 Failed to issue method call: No such file or directory systemctl status lightdm.service 给我 lightdm.service - LSB: Light Display Manager Loaded: loaded (/etc/init.d/lightdm) Active: inactive (dead) since Thu, 03 Jul 2014 09:33:00 +0000; 22min ago Process: 762 ExecStop=/etc/init.d/lightdm stop (code=exited, …

1
谁在启动我的ssh-agent,为什么它不能正确终止?
这是我很长一段时间以来一直遇到的问题,但是每次我尝试弄清某些东西时,我都会迷路,所以我想最好在这里问一个也许更有经验的人可以帮助我。 背景 我的Raspberry Pi正在运行Raspbian Jessie,我经常使用SSH登录并远程执行命令。在我的第一个SSH会话中,我注意到每次登录时都会在RPi上ssh-agent生成一个进程,但是在注册时却没有杀死该进程exit:多次登录和注销会导致生成一堆ssh-agent进程,只是让它们挂在那儿什么也不做。最近,我在各处闲逛并阅读手册页和答案,我了解了的目的ssh-agent,并且我还了解到注销通常应该将其杀死,因此我开始自问为什么不这样做。此外,我注意到发行source ~/.bashrc会导致产生另一个实例ssh-agent。我在相关手册页上阅读之所以SSH_AGENT_PID应该定义环境变量,是因为应该在该ssh-agent程序中启动该程序eval以执行其输出并定义此类变量,然后这些变量将由其他与SSH相关的命令使用,包括ssh-agent -k(杀死相对于当前会话的代理),所以我跑了echo $SSH_AGENT_PID和echo $SSH_AUTH_SOCK,但他们都是空的。我突然意识到:可能该进程在注销时不会被终止,因为它ssh-agent -k试图从未设置的环境变量中读取其PID。 问题 由于ssh-agent未在注销时被杀死,并且这肯定是由于未设置所需的环境变量而发生的,因此只能表示一件事:调用ssh-agent登录的任何人都可能无法以正确的方式进行操作(应该如此eval "$(ssh-agent -s)")。所以我想:那是什么问题?我将发现执行了哪个配置文件,服务或登录脚本以启动代理并手动对其进行修复!到底在哪里? 我尝试过的 由于我注意到ssh-agent每次调用都会产生一个source ~/.bashrc,因此这是我检查的第一个文件,但是那里甚至没有远程引用与SSH相关的任何文件。我一直在以下所有文件中搜索使用vi的字符串ssh,但未发现任何内容: ~/.bashrc ~/.profile /etc/bash.bashrc /etc/profile /etc/profile.d/ (every file in this folder) /etc/environment 还有其他文件可以参与source ~/.bashrc吗?我真的不知道 然后,我搜索了相关systemd服务,但仅找到ssh.service,即WantedBy=multi-user.target,因此未在登录时运行(而且很明显,因为这是SSH服务器守护程序)。 我还尝试将文件/home/pi夹中的每个文件都移到一个临时文件夹,然后注销并再次登录,但ssh-agent仍然生成。 最终,我还打开了我在会议厅中拍摄的最后一张照片:我find / -name 'ssh-agent'以root身份运行,仅打印/usr/bin/ssh-agent了一个可执行文件,因此我创建了一个伪造的可执行文件,该可执行文件基本上只记录了父命令: #! /bin/bash ps -o args= $PPID > /home/pi/LOG cat /proc/$PPID/cmdline >> /home/pi/LOG 我重命名了真实的,/usr/bin/ssh-agent并用设置了正确权限/用户/组的伪造替换了它,source ~/.bashrc再次运行,然后打印了LOG文件: …

2
试图了解自动重新连接WIFI的方法
我发现这种方法可以从本文中重新连接WIFI加密狗。但是,在尝试实施之前,我想弄清楚它是如何工作的。 转到/etc/ifplugd/action.d/并将ifupdown文件重命名为 ifupdown.original。 然后执行:cp /etc/wpa_supplicant/ifupdown.sh ./ifupdown。 最后: sudo reboot 什么时候/etc/ifplugd/action.d/ifupdown叫? 该脚本/etc/wpa_supplicant/ifupdown.sh本质上是用外行的方式执行的,对我来说,它看起来很复杂。什么时候也叫它 步骤1到步骤3是否会导致其他无法预见的问题,从而导致我的WIFI无法正常工作?我正在尝试通过SSH在Raspberry PI上实现此功能,而在难以到达的位置没有键盘和显示器。 我尝试使用Google进行各种操作,但迷路了!

1
系统启动和终端启动程序之间的区别
我对程序之间的差异感到好奇。通过systemctl启用时,以systemd开头,而不是/etc/rc.local通过CLI或通过CLI进行启动。 例如,我最近在树莓派上使用shairport-sync。最初,我通过启用sudo systemctl的shairport-sync将shairport-sync设置为启动。 后来,我使用其中的功能在shairport-sync脚本运行之前和发布到连接的设备。 令我惊讶的是,这些脚本在执行shairport-sync时没有kill arecord或aplay 但是,当我通过终端运行脚本时,脚本将执行并杀死arecord和aplay。 为了进一步迷惑自己,我shairport-sync通过终端杀死并启动了它,以查看正在发生的事情的输出。当我这样做时,脚本在设备连接并终止arecord并终止时按预期运行aplay。因此,作为一项修复,我禁用shairport-sync了sysmtectl它并将其设置/etc/rc.local为作为快速修复运行。之后,reboot它按我的预期运行。 这使我相信,单独运行systemd的程序与通过/etc/rc.local或CLI 启动时运行的程序之间存在一些差异。 为什么会这样?这是因为运行级别不同吗?一些黑魔法? 设备连接到时运行的脚本shairport-sync如下:shairportstart.sh #!/bin/sh /usr/bin/sudo /bin/pkill arecord if [ $(date +%H) -ge "18" -o $(date +%H) -le "7" ]; then /usr/bin/amixer set Speaker 40% else /usr/bin/amixer set Speaker 100% fi /home/pi/shScripts/shairportfade.sh& exit 0 这是渐变脚本: shairportfade.sh #!/bin/sh /usr/bin/amixer set Speaker 30- for …

1
使用QEMU模拟RaspberryPi
我想使用QEMU在MacOSX上运行RaspberryPi系统。我使用本教程尝试了以下操作: ./qemu-system-arm -M多用途pb -cpu arm1176 -m 256 -hda ArchLinuxARM-2014.06-rpi.img -kernel kernel.img-附加“ root = / dev / sda” -serial stdio ArchLinuxARM-2014.06-rpi.img我的RPi图像在哪里,并且kernel.img确切地来自ArchLinuxARM-2014.06-rpi.img(我制作了它的副本,但我不确定这是一个绝妙的主意)。 结果得到两个QEMU窗口。其中有一个“计算机”和一个“查看”菜单,以及一个黑色屏幕,显示以下消息: 来宾尚未初始化显示(尚未)。 第二个只是一个黑色的窗口。 使用Raspbian映像和相同的命令时,我遇到了相同的问题。我究竟做错了什么?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.