我试图用parted和resize2fs调整分区大小。
我尝试了以下方法:
#parted
Partition Table: msdos
Number Start End Size Type File system Flags
1 2097kB 21.0GB 21.0GB primary ext4 boot
2 21.0GB 500GB 479GB primary ext4
3 500GB 500GB 536MB primary linux-swap(v1)
(parted) rm 2
(parted) mkpart
Partition type? primary/extended? primary
File system type? [ext2]? ext4
Start? 41GB
End? 500GB
(parted) q
Information: You may need to update /etc/fstab.
#resize2fs /dev/sda2
resize2fs 1.42.5 (29-Jul-2012)
resize2fs: Bad magic number in super-block while trying to open /dev/sda2
Couldn't find valid filesystem …Run Code Online (Sandbox Code Playgroud) 我正在尝试在我的 Linux 机器上安装专有的 Nvidia 驱动程序(Nvidia GeForce GTX 750、Debian w/Linux 4.1.2.1)。为了使用Nvidia的.run文件,我需要禁用nouveau。创建.run一个将执行此任务的文件,但需要重新启动。然而,禁用 nouveau 会破坏启动周期。我应该做些什么?
我是 acl 的新手,所以这对我来说是黑魔法。但我拥有的是一台我想与之交谈的相机。
所以我得到了一台网络启动的 Debian 机器:
ulf@term13:~(0)$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 6.0.10 (squeeze)
Release: 6.0.10
Codename: squeeze
Run Code Online (Sandbox Code Playgroud)
我在那台机器上安装了一个相机:
ulf@term13:~(0)$ lsusb | grep Nikon
Bus 001 Device 092: ID 04b0:0428 Nikon Corp.
ulf@term13:~(0)$ ls -alF /dev/bus/usb/001/092
crw-rw-r--+ 1 root root 189, 91 25 sep 10.05 /dev/bus/usb/001/092
Run Code Online (Sandbox Code Playgroud)
请注意+权限字符串末尾的crw-rw-r--+。这表明这里有一个ACL正在工作:
ulf@term13:~(1)$ getfacl /dev/bus/usb/001/092
getfacl: Removing leading '/' from absolute path names
# file: dev/bus/usb/001/092
# owner: root
# group: …Run Code Online (Sandbox Code Playgroud) 好吧,我犯了一个大错误。我尝试从 coreutils:i386 升级到 coreutils:arm64,但出了问题。现在我已经没有很多程序了,包括 rm、touch、chmod 和 mv。
所以,我尝试运行apt-get install coreutils:
root@srv028:/tmp# apt-get install coreutils
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
coreutils
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
Need to get 0 B/2,727 kB of archives.
After this operation, 14.6 MB of additional disk space will be used.
dpkg: warning: 'rm' not found …Run Code Online (Sandbox Code Playgroud) 我在我的树莓派上安装了 zsh,由于各种原因,包括 shell 完全变慢的事实,我决定删除它。我卸载了该软件包,将 shell 更改回 /bin/bash 并假设一切都会正常。但是,卸载它似乎出现了问题。
当我尝试通过 SSH 重新登录 pi 时,我看到以下内容:
Welcome to KRATOS
Permission denied (publickey).
Run Code Online (Sandbox Code Playgroud)
我知道公钥没问题,因为它在过去一直有效,所以我将 Raspberry Pi 连接到监视器,以便在它唤醒时查看日志。它按预期运行一切,然后当我尝试使用用户名和密码登录时pi,它使我登录,然后显示错误并继续将我注销。
Cannot execute /usr/bin/zsh: No such file or directory
Run Code Online (Sandbox Code Playgroud)
当我尝试以 登录时,也会发生同样的情况root。
我是否已将自己完全锁定在系统之外,还是有办法重新进入?最糟糕的是,我可以尝试将文件系统安装到另一台笔记本电脑上并从那里更改配置?
对于使用 systemd 的最新版本的 debian,不再可以使用 boodlogd 查看 stdout 启动消息
systemd 调试的说明也没有说明如何执行此操作。
那么如何从启动时看到屏幕上准确的 stdout/stderr 日志消息呢?
我尝试了一切,但没有任何进展。聪明的灵魂能帮上忙吗?
当然只是sudo apt-get -f install不起作用,同样的错误。
$ sudo apt-get install arping
[sudo] password for dloo:
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
arping : Depends: libnet1 (>= 1.1.2.1) but it is not going to be installed
Depends: libpcap0.8 (>= 0.9.8) but it is not going to be installed
libc-dev-bin : Depends: libc6 (< 2.16) but 2.17-0ubuntu4 is to …Run Code Online (Sandbox Code Playgroud) 今天,我发现了一个容易失控的过程:
username 1505 2.4 1.7 391380 70216 tty2 Sl+ 20:36 3:19 /usr/lib/xorg/Xorg vt2 -displayfd 3 -auth /run/user/1000/gdm/Xauthority -background none -noreset -keeptty -verbose 3
Run Code Online (Sandbox Code Playgroud)
谁能解释一下它的目的是什么?
系统详情:
4.17.0-1-amd64 #1 SMP Debian 4.17.8-1 (2018-07-20) x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud) 当我使用命令时
apt --fix-broken install
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
正在读取包列表...完成
构建依赖关系树
读取状态信息...完成
更正依赖关系...失败。
以下软件包具有未满足的依赖项:
libhogweed4 : Depends: libnettle6 (= 3.3-1+b1) but 3.4-1 is installed
mana-toolkit : Depends: dnsmasq but it is not installable
E: Error, pkgProblemResolver::Resolve生成中断,这个可能是包裹滞留造成的。
E: 无法纠正依赖关系
因此,我无法安装任何东西。
我能做什么?
我通过 systemd 单元处理由 docker 容器实现的许多服务(数据库、Web 服务器...)。它可以工作,但是系统需要很长时间才能关闭,显然是在等待 docker 服务关闭。
这是我在 Debian Stretch 下使用 Docker CE 在虚拟机中制作的 systemd 单元的示例:
/lib/systemd/system/mariadb.service
[Unit]
Description=MariaDB
After=docker.service
Requires=docker.service
[Service]
TimeoutStartSec=0
Restart=always
ExecStart=/usr/bin/docker run --rm \
--name=mariadb \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=root \
-e MYSQL_DATABASE=test \
-e MYSQL_USER=user \
-e MYSQL_PASSWORD=user \
-v /var/lib/mysql:/var/lib/mysql \
mariadb:latest
ExecStop=-/usr/bin/docker stop mariadb # See UPDATEs 1 & 2
[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)
当我使用 systemctl 命令时,服务会在几秒钟内正确启动和停止。但是当我关闭系统时,它显示:
持续时间超过3分钟。如果有许多容器通过 systemd 运行,则可能会更长。
该问题并非特定于 MariaDB。
有没有更好的方法来通过 systemd 处理 docker 容器,避免额外的关机时间?
更新 1:正如 Bennett Hardwick 在评论中建议的那样,我尝试从服务的定义中删除 ExecStop …
debian ×10
linux ×5
systemd ×2
ubuntu ×2
apt-get ×1
dependencies ×1
docker ×1
drivers ×1
installation ×1
kali-linux ×1
partitioning ×1
permissions ×1
raspberry-pi ×1
shell ×1
usb ×1
xorg ×1
zsh ×1