我最近发现它qemu-kvm有一个非常有前途的-curses选项,它不是启动 X 窗口,而是显示来自来宾的不错的 ncurses 输出,适合从命令行管理 Linux 来宾(或者,更令人满意的是,在屏幕会话中,甚至通过 ssh)。
所以我尝试了这个,发现我的 Arch Linux 客户机进入了“图形模式”,使这个功能无用。据我所知,问题是来宾内核初始化帧缓冲区以允许高于 80x60 的字符分辨率(和漂亮的图形)。所以我继续寻找一种方法来阻止来宾内核启动帧缓冲区。我尝试了各种内核参数,nomodeset, fb=false, vga=0x0FF, vga=ask(随后选择了VGA一个VESA模式而不是模式),但无济于事:每次都qemu-kvm -curses报告在来宾上处于“图形模式”(在初始启动菜单之后),并且我我无法从主机上的命令行终端与来宾交互。
有没有什么简单的方法可以在不更改内核构建参数的情况下将访客内核保持在它启动时的相同模式(无帧缓冲区)?如果没有,我应该更改哪些内核构建选项来编译没有帧缓冲区支持的内核?有没有更好的方法可以在纯文本模式下从主机上的终端获取 VM 登录(例如,适合在主机上的屏幕会话中运行),而无需在来宾上运行 sshd?
当我通过 ssh 进入服务器 (4.3.3-2-ARCH) 时,我的 .bashrc 没有加载(但是,我可以通过采购它来手动加载它)。
我的主文件夹中没有任何其他文件,例如 .profile。外壳也正确
$ echo $SHELL
/bin/bash
Run Code Online (Sandbox Code Playgroud)
当我使用 登录时ssh -t myserver /bin/bash,我的 .bashrc 已正确加载。
在 SSH 详细模式下,我确实看到 /etc/bash.bashrc 和 ~/.bashrc 是使用最后一个命令加载的。使用默认的 ssh 命令时,它们都没有被加载...
使用默认 ssh 命令时,我应该配置什么来加载 .bashrc(和 /etc/bash.bashrc)?
我正在尝试删除根 CA 证书,但trust anchor --remove官方Red Hat 8 文档中指定的命令给出了只读错误。
sudo trust anchor --remove --verbose "pkcs11:id=%c6%41%4f%df%64%5d%6c%2c%7b%ca%bc%bd%3e%b2%d4%85%cd%59%a7%49;type=cert"
(p11-kit:2482) remove_all: removing certificate: 19
p11-kit: couldn't remove read-only certificate
Run Code Online (Sandbox Code Playgroud)
文档中没有任何关于此的内容。
我曾经将我的系统配置文件全部放在一个目录中以便更好地管理,但现在我需要对其使用一些版本控制。
但问题是 git 不理解指向存储库外部的符号链接,并且我无法反转角色(将真实文件放在存储库上,符号链接放在正确的路径上),因为读取了一些文件在内核加载之前。
我认为我可以使用 unison 来同步 repo 中的文件及其路径,但这并不实用。并且硬链接可能会被破坏。任何的想法 ?
假设我有一个这样的 shell 脚本:-
#!/bin/sh
# cherrypy_server.sh
PROCESSES=10
THREADS=1 # threads per process
BASE_PORT=3035 # the first port used
# you need to make the PIDFILE dir and insure it has the right permissions
PIDFILE="/var/run/cherrypy/myproject.pid"
WORKDIR=`dirname "$0"`
cd "$WORKDIR"
cp_start_proc()
{
N=$1
P=$(( $BASE_PORT + $N - 1 ))
./manage.py runcpserver daemonize=1 port=$P pidfile="$PIDFILE-$N" threads=$THREADS request_queue_size=0 verbose=0
}
cp_start()
{
for N in `seq 1 $PROCESSES`; do
cp_start_proc $N
done
}
cp_stop_proc()
{
N=$1
#[ -f "$PIDFILE-$N" ] && kill `cat …Run Code Online (Sandbox Code Playgroud) sudo(我已配置为要求输入密码)拒绝我的密码(就像我输入错误一样)我绝对没有输入错误。我暂时将密码更改为仅字母字符,并且在同一个终端中以纯文本格式看起来不错。我的用户名是这样配置的:
myusername ALL=(ALL) ALL
Run Code Online (Sandbox Code Playgroud)
我使用的是我的密码,而不是 root 密码,它们是不同的。可以肯定的是,我已经尝试了两者(即使我知道 root 密码不是我应该使用的) - 都不起作用。
我另外将自己添加到“wheel”组中,并包含以下行:
%wheel ALL=(ALL) ALL
Run Code Online (Sandbox Code Playgroud)
我有点束手无策了。我不知道什么会导致它表现得好像在接受我的密码,但随后拒绝了它。无论是在终端 shell 还是通过 X11 登录管理器,我都可以使用相同的密码登录。
我刚刚在 Archlinux 机器上安装了 nginx 并遇到了这个问题:
Nginx 被配置为作为"nginx"运行,这是我添加的一个新用户/组,在/etc/nginx/nginx.conf:
user nginx nginx;
Run Code Online (Sandbox Code Playgroud)
对于双重检查:
$ ps aux | grep nginx
nginx 9678 0.0 0.5 28472 2856 ? S 17:37 0:00 nginx: worker process
nginx 9679 0.0 0.5 28472 2856 ? S 17:37 0:00 nginx: worker process
root 31912 0.0 0.6 28084 3364 ? Ss 17:24 0:00 nginx: master process /usr/bin/nginx -g pid /run/nginx.pid; error_log stderr;
Run Code Online (Sandbox Code Playgroud)
服务器的根目录位于:
location / {
root /home/lamnk/sites/host.com;
index index.html index.htm;
}
Run Code Online (Sandbox Code Playgroud)
并且文件的所有者也设置为nginx:
$ …Run Code Online (Sandbox Code Playgroud) nginx chmod arch-linux file-permissions http-status-code-403
我正在尝试在 Virtualbox VM 上安装 Arch。我正在关注本指南和视频。不确定是否相关,但 VDI 文件位于外部硬盘驱动器上。
我根据视频创建了 3 个分区:
/dev/sda1 linux-swap (~5 GB)/dev/sda2 ext4(~10 GB)/dev/sda3 ext4(~35 GB)很早就,视频建议运行一些命令:
# mkdir /mnt/home
# mount /dev/sda2 /mnt
# mount /dev/sda3 /mnt/home
Run Code Online (Sandbox Code Playgroud)
但是最后一个命令给了我以下错误:
mount: mount point /mnt/home does not exist
Run Code Online (Sandbox Code Playgroud)
systemd-analyze plot 只显示切换根发生后所有单元的时间图。交换机根单元(定义为 initrd 引导序列中的最后一个单元)状态:
[Service]
# ...
ExecStart=/usr/bin/systemctl --no-block --force switch-root /sysroot
# ...
Run Code Online (Sandbox Code Playgroud)switch-root 系统命令上的 systemctl 手册页有这样的说法:
switch-root ROOT [初始化]
切换到不同的根目录并在其下执行一个新的系统管理器进程。这旨在用于初始 RAM 磁盘(“initrd”),并将从 initrd 的系统管理器进程(又名“init”进程)过渡到从实际主机卷加载的主系统管理器进程。此调用需要两个参数:将成为新根目录的目录,以及在其下作为 PID 1 执行的新系统管理器二进制文件的路径。如果省略后者或空字符串,将自动搜索 systemd 二进制文件用于并用作初始化。如果省略系统管理器路径,等于空字符串或与 systemd 二进制文件的路径相同,则 initrd 的系统管理器进程的状态将传递给主系统管理器,这允许稍后对所涉及服务的状态进行自省在 initrd 启动阶段。
然后在 initrds 问题上保持沉默......
启动后,我如何内省 initrd 启动阶段所涉及的服务状态,如上面推断的那样,或者发现什至运行了哪些单元(因为有些是动态生成的)?
更新 Arch Linux (sudo pacman -Syu) 并重启系统后,由于 kube-proxy 导致 Minikube 无法启动。日志显示它正在尝试修改,/proc/sys/net/netfilter/nf_conntrack_max但遇到了权限被拒绝的问题。
我试图运行,sudo chmod 777 /proc/sys/net/netfilter/nf_conntrack_max但系统不允许我。我也删除~/.minikube并重新开始,但它仍然拒绝工作。启动时同样的问题kind。谁能告诉我如何解决这个问题?
$ kubectl get pods -n kube-system
NAME READY STATUS RESTARTS AGE
coredns-74ff55c5b-2hkpd 0/1 Running 0 22s
etcd-minikube 0/1 Running 0 30s
kube-apiserver-minikube 1/1 Running 0 30s
kube-controller-manager-minikube 0/1 Running 0 30s
kube-proxy-qhhx9 0/1 Error 2 22s
kube-scheduler-minikube 0/1 Running 0 30s
storage-provisioner 1/1 Running 0 35s
Run Code Online (Sandbox Code Playgroud)
kubectl logs kube-proxy-qhhx9 -n kube-system
I0511 04:47:08.189373 1 node.go:172] Successfully retrieved …Run Code Online (Sandbox Code Playgroud)