我在 Ubuntu 16.04 上重新安装了 Oracle 11g XE( 按照本教程)
一切都已启动并运行。
问题是:安装时我说不要在引导时启动。
Do you want Oracle Database 11g Express Edition to be started on boot (y/n) [y]:n
Run Code Online (Sandbox Code Playgroud)
但 Oracle 仍会在启动时继续启动。
bruno@ubuntu:/etc/init.d$ ps aux | grep oracle
oracle 914 0.0 0.0 45248 4664 ? Ss 19:12 0:00 /lib/systemd/systemd --user
oracle 916 0.0 0.0 63212 1860 ? S 19:12 0:00 (sd-pam)
oracle 1031 0.0 0.1 224520 20116 ? Ssl 19:12 0:00 /u01/app/oracle/product/11.2.0/xe/bin/tnslsnr LISTENER -inherit
oracle 1421 0.0 0.2 1268904 46568 ? Ss 19:12 …Run Code Online (Sandbox Code Playgroud) 我使用systemd(xenial) 并希望保持最新状态。为此,我安装了 Martin Pitt 的 PPA,一切都很好。
在一个系统上(没有任何特别之处,实际上这是一个全新安装),尽管配置了 PPA ......
root@eu11:~# apt update
Get:1 http://security.ubuntu.com/ubuntu xenial-security InRelease [102 kB]
Hit:2 http://fr.archive.ubuntu.com/ubuntu xenial InRelease
Hit:3 http://fr.archive.ubuntu.com/ubuntu xenial-updates InRelease
Hit:4 http://fr.archive.ubuntu.com/ubuntu xenial-backports InRelease
Hit:5 http://ppa.launchpad.net/pitti/systemd/ubuntu xenial InRelease
Fetched 102 kB in 0s (297 kB/s)
Reading package lists... Done
Building dependency tree
Reading state information... Done
All packages are up to date.
Run Code Online (Sandbox Code Playgroud)
...systemd从标准存储库安装。
root@eu11:~# apt show systemd
Package: systemd
Version: 229-4ubuntu17
Priority: required
Section: admin
Origin: Ubuntu
Run Code Online (Sandbox Code Playgroud)
这种行为的原因是什么?(我没有配置任何固定,因为我不知道怎么做,以前从来没有需要) …
user@node15:~$ systemctl
Failed to list units: No such method 'ListUnitsFiltered'
user@node15:~$ sudo dpkg-reconfigure systemd
[sudo] password for user:
addgroup: The group `systemd-journal' already exists as a system group. Exiting.
Operation failed: No such file or directory
user@node15:~$
Run Code Online (Sandbox Code Playgroud)
这是我从运行 ubuntu Server 16.04-2 的机器上得到的。我以前见过这样的错误,通常重启修复它,但这次它不起作用。我如何找到原因并解决它?
我正在运行带有 Ubuntu MATE 16.04 的 Raspberry Pi(我是 Linux 新手)我安装了 webmin,所以我可以看到我的 ssh 服务器在启动时启动,但处于非活动状态我在这里阅读了帖子:
并做了所有建议的事情......
sudo /etc/init.d/ssh start
sudo update-rc.d ssh defaults
systemctl enable ssh.socket
Run Code Online (Sandbox Code Playgroud)
没发生什么事。该服务在启动时加载,但处于非活动状态。
我最近购买了一个包含 Realtek rtl8811CU 芯片组的 Wifi Dongle。我正在使用 Ubuntu 18.04 LTS。
\n\n幸运的是,在找到这个Github repo后,我可以毫无问题地编译它并安装驱动程序。
\n\n但是,每次连接加密狗时,都会被检测为磁盘,并且我需要运行 usb_modeswitch 才能使其工作:
\n\n$ lsusb\n [...]\n Bus 001 Device 013: ID 0bda:1a2b Realtek Semiconductor Corp. \n$ sudo usb_modeswitch -KW -v 0bda -p 1a2b\n$ lsusb\n [...]\n Bus 001 Device 014: ID 0bda:c811 Realtek Semiconductor Corp.\nRun Code Online (Sandbox Code Playgroud)\n\n设备 ID 发生变化,现在我可以正确使用我的 Wifi dongle。
\n\n我尝试将此条目添加到位于 /lib/udev/rules.d/40-usb_modeswitch.rules 的 udev 规则中,据说每次检测到设备时都运行该命令:
\n\n # Realtek 8211CU Wifi AC USB\n ATTR{idVendor}=="0bda", ATTR{idProduct}=="1a2b", RUN+="usb_modeswitch \'/%k\'"\nRun Code Online (Sandbox Code Playgroud)\n\n但后来我重新连接,什么也没发生。
\n\n我已经检查过,也许您需要一项服务来执行此操作,但似乎无法激活。
\n\n$ systemctl …Run Code Online (Sandbox Code Playgroud) 当我在单元文件中指定工作目录时,我想通过说明符从 ExecStart 部分引用它,即
[Unit]
Description=A test daemon that says hello
[Service]
Type=oneshot
WorkingDirectory=/home/foo/scipts
ExecStart="%<<WORKING_DIRECTORY_SPECIFIER>>/echo_hello.sh"
RemainAfterExit=yes
Run Code Online (Sandbox Code Playgroud)
Systemd 可以实现这一点吗?如果不行,有什么解决方法吗?
[Unit]
Description=captive portal automation
[Service]
Type=simple
ExecStart=/usr/bin/python /home/pi/do.py
Restart=on-failure
RestartSec=5
Run Code Online (Sandbox Code Playgroud)
以上是caportal.service在Ubuntu 14.04机器上运行的一个名为systemd服务的内容。我需要每 30 分钟重复一次该服务。我怎样才能做到这一点 ?
/home/pi/do.py
import requests,json
import netifaces as ni
import commands as cm
gateway=ni.gateways()['default'][ni.AF_INET][0]
IPaddr=ni.ifaddresses('wlan0')[ni.AF_INET][0]['addr']
mac=ni.ifaddresses('wlan0')[ni.AF_LINK][0]['addr'].upper().replace(':','-')
ssid=cm.getoutput('iwgetid -r')
Home="http://"+gateway+":8010/"
URL=Home+"login.html"
print URL
d={}
d['IdSession']=mac
d['Language']='English'
d['refrescar']='0'
d['ip']=IPaddr
d['mac']=mac
d['DSP']=Home
d['AC']='1'
d['userlog']='vishnu'
d['userpass']='12345'
d['read']='checkbox'
d['Login']='+++Go+++'
try:
if ssid=='machCochin':
r=requests.post(URL,data=d)
print r.status_code
#raise ValueError("ERROR simulated")
else:
print "network is not machCochin"
except Exception as e:
pass
Run Code Online (Sandbox Code Playgroud) 我最近注意到一个服务器执行 apt-get update && apt-get dist-upgrade
除其他外,docker 已更新并重新启动。
但是,我注意到我之前对服务文件所做的一些更改现在已经消失了。该文件/lib/systemd/system/docker.service似乎已被重置。
这可能吗?我不记得我是否daemon-reload遵循这些更改。
编辑:要清楚:我想知道dist-upgrade基本上删除了服务文件并将其替换为默认文件?
daemon-reload将来是否可以防止这种情况?
EDIT2:好的,看起来sudo systemctl edit docker.service是执行daemon-reload保存的方法。
我正在使用 usbmount 并终于让它工作了。我花了这么长时间才让它工作的原因之一是我认为它的最新版本(从源代码构建)没有正确安装我的驱动器,因为我在日志中看不到安装命令。我正在使用:
journalctl -u systemd-udevd.service -f
Run Code Online (Sandbox Code Playgroud)
查看基于此博客文章的日志。我现在使用的更高版本似乎是它自己的服务,并且不会在该单元下登录。
如果我立即运行,journalctl -f我确实会看到我感兴趣的日志:
Apr 23 06:51:35 raspberrypi systemd[1]: Starting usbmount@dev-sda.service...
Apr 23 06:51:35 raspberrypi usbmount[925]: loaded usbmount configurations
Apr 23 06:51:35 raspberrypi usbmount[927]: trying to acquire lock /var/run/usbmount/.mount.lock
Apr 23 06:51:35 raspberrypi usbmount[930]: acquired lock /var/run/usbmount/.mount.lock
Apr 23 06:51:35 raspberrypi usbmount[949]: /dev/sda contains filesystem type vfat
Apr 23 06:51:35 raspberrypi usbmount[952]: mountpoint /media/usb0 is available for /dev/sda
Apr 23 06:51:35 raspberrypi usbmount[953]: executing command: mount -tvfat -osync,noexec,nodev,noatime,nodiratime /dev/sda /media/usb0 …Run Code Online (Sandbox Code Playgroud)