私はRaspberry Pi 3bのRaspbian Jessieでこれを成功しました。
% http://askubuntu.com/a/227513/25388
masi@raspberrypi:~ $ sudo locale-gen en_US en_US.UTF-8
masi@raspberrypi:~ $ sudo dpkg-reconfigure locales
走るけど手にsudo deluser pi
入れる
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = "en_US.UTF-8",
LC_PAPER = "fi_FI.UTF-8",
LC_ADDRESS = "fi_FI.UTF-8",
LC_MONETARY = "fi_FI.UTF-8",
LC_NUMERIC = "fi_FI.UTF-8",
LC_TELEPHONE = "fi_FI.UTF-8",
LC_IDENTIFICATION = "fi_FI.UTF-8",
LC_MEASUREMENT = "fi_FI.UTF-8",
LC_TIME = "fi_FI.UTF-8",
LC_NAME = "fi_FI.UTF-8",
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Removing user `pi' ...
Warning: group `pi' has no more members.
userdel: user pi is currently used by process 929
/usr/sbin/deluser: `/usr/sbin/userdel pi' returned error code 8. Exiting.
マルチロケールの問題が失敗した場合は、修正も試みました。
for y in $(locale | cut -d '=' -f 2| sort |uniq );do sudo locale-gen $y; done
はい
masi@raspberrypi:~ $ ps -fp 929
UID PID PPID C STIME TTY TIME CMD
pi 929 1 0 08:54 ? 00:00:00 /usr/lib/menu-cache/menu-cached /tmp/.
はい
masi@raspberrypi:~ $ sudo kill 929
masi@raspberrypi:~ $ sudo deluser pi
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = "en_US.UTF-8",
LC_PAPER = "fi_FI.UTF-8",
LC_ADDRESS = "fi_FI.UTF-8",
LC_MONETARY = "fi_FI.UTF-8",
LC_NUMERIC = "fi_FI.UTF-8",
LC_TELEPHONE = "fi_FI.UTF-8",
LC_IDENTIFICATION = "fi_FI.UTF-8",
LC_MEASUREMENT = "fi_FI.UTF-8",
LC_TIME = "fi_FI.UTF-8",
LC_NAME = "fi_FI.UTF-8",
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Removing user `pi' ...
Warning: group `pi' has no more members.
userdel: user pi is currently used by process 1174
/usr/sbin/deluser: `/usr/sbin/userdel pi' returned error code 8. Exiting.
masi@raspberrypi:~ $ sudo deluser -remove-home pi
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = "en_US.UTF-8",
LC_PAPER = "fi_FI.UTF-8",
LC_ADDRESS = "fi_FI.UTF-8",
LC_MONETARY = "fi_FI.UTF-8",
LC_NUMERIC = "fi_FI.UTF-8",
LC_TELEPHONE = "fi_FI.UTF-8",
LC_IDENTIFICATION = "fi_FI.UTF-8",
LC_MEASUREMENT = "fi_FI.UTF-8",
LC_TIME = "fi_FI.UTF-8",
LC_NAME = "fi_FI.UTF-8",
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Looking for files to backup/remove ...
Removing user `pi' ...
Warning: group `pi' has no more members.
userdel: user pi is currently used by process 1174
/usr/sbin/deluser: `/usr/sbin/userdel pi' returned error code 8. Exiting.
masi@raspberrypi:~ $
これでプロセスIDを終了し1174
、同じ出力を得ましたが、今は新しいプロセスIDが提供されます1202
。私はしかしsudo killall -u pi -m .
私は得る
Usage: killall [OPTION]... [--] NAME...
はい
masi@raspberrypi:~ $ sudo pkill -u pi
masi@raspberrypi:~ $ sudo deluser pi
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = "en_US.UTF-8",
...
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Removing user `pi' ...
Warning: group `pi' has no more members.
userdel: user pi is currently used by process 3422
/usr/sbin/deluser: `/usr/sbin/userdel pi' returned error code 8. Exiting.
はい
masi@raspberrypi:~ $ ps -u pi
PID TTY TIME CMD
3422 tty1 00:00:00 bash
masi@raspberrypi:~ $ sudo kill 3422
masi@raspberrypi:~ $ sudo deluser pi
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = "en_US.UTF-8",
LC_PAPER = "fi_FI.UTF-8",
LC_ADDRESS = "fi_FI.UTF-8",
LC_MONETARY = "fi_FI.UTF-8",
LC_NUMERIC = "fi_FI.UTF-8",
LC_TELEPHONE = "fi_FI.UTF-8",
LC_IDENTIFICATION = "fi_FI.UTF-8",
LC_MEASUREMENT = "fi_FI.UTF-8",
LC_TIME = "fi_FI.UTF-8",
LC_NAME = "fi_FI.UTF-8",
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Removing user `pi' ...
Warning: group `pi' has no more members.
userdel: user pi is currently used by process 3496
/usr/sbin/deluser: `/usr/sbin/userdel pi' returned error code 8. Exiting.
はい
masi@raspberrypi:~ $ who
pi tty1 Jun 4 09:38
masi pts/0 Jun 4 09:06 (masi)
はい
masi@raspberrypi:~ $ sudo skill -KILL -u pi
masi@raspberrypi:~ $ sudo deluser pi
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = "en_US.UTF-8",
LC_PAPER = "fi_FI.UTF-8",
LC_ADDRESS = "fi_FI.UTF-8",
LC_MONETARY = "fi_FI.UTF-8",
LC_NUMERIC = "fi_FI.UTF-8",
LC_TELEPHONE = "fi_FI.UTF-8",
LC_IDENTIFICATION = "fi_FI.UTF-8",
LC_MEASUREMENT = "fi_FI.UTF-8",
LC_TIME = "fi_FI.UTF-8",
LC_NAME = "fi_FI.UTF-8",
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Removing user `pi' ...
Warning: group `pi' has no more members.
userdel: user pi is currently used by process 3496
/usr/sbin/deluser: `/usr/sbin/userdel pi' returned error code 8. Exiting.
私はスティーブンの提案に同意しますが、
masi@raspberrypi:~ $ sudo service lightdm stop
masi@raspberrypi:~ $ sudo deluser pi
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = "en_US.UTF-8",
LC_PAPER = "fi_FI.UTF-8",
LC_ADDRESS = "fi_FI.UTF-8",
LC_MONETARY = "fi_FI.UTF-8",
LC_NUMERIC = "fi_FI.UTF-8",
LC_TELEPHONE = "fi_FI.UTF-8",
LC_IDENTIFICATION = "fi_FI.UTF-8",
LC_MEASUREMENT = "fi_FI.UTF-8",
LC_TIME = "fi_FI.UTF-8",
LC_NAME = "fi_FI.UTF-8",
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Removing user `pi' ...
Warning: group `pi' has no more members.
userdel: user pi is currently used by process 3496
/usr/sbin/deluser: `/usr/sbin/userdel pi' returned error code 8. Exiting.
私のコマンドの2回目の繰り返しは、コマンドの最初のステップでロケールを変更しようとしましたが、再び失敗しました。
はい
masi@raspberrypi:~ $ ps -ft tty1
UID PID PPID C STIME TTY TIME CMD
root 3491 1 0 09:38 tty1 00:00:00 /bin/login -f
pi 3507 3491 0 09:38 tty1 00:00:00 -bash
私はこれをしましたが、sudo vim /etc/inittab
ファイルは空です。私はアウトプットで何もしませんmasi@raspberrypi:~ $ sudo grep -r "login -f" /etc
。
はい
masi@raspberrypi:~ $ sudo grep -r autologin /etc
/etc/lightdm/lightdm.conf:# pam-autologin-service = PAM service to use for autologin
/etc/lightdm/lightdm.conf:# autologin-guest = True to log in as guest by default
/etc/lightdm/lightdm.conf:# autologin-user = User to log in with by default (overrides autologin-guest)
/etc/lightdm/lightdm.conf:# autologin-user-timeout = Number of seconds to wait before loading default user
/etc/lightdm/lightdm.conf:# autologin-session = Session to load for automatic login (overrides user-session)
/etc/lightdm/lightdm.conf:# autologin-in-background = True if autologin session should not be immediately activated
/etc/lightdm/lightdm.conf:#pam-autologin-service=lightdm-autologin
/etc/lightdm/lightdm.conf:#autologin-guest=false
/etc/lightdm/lightdm.conf:autologin-user=pi
/etc/lightdm/lightdm.conf:#autologin-user-timeout=0
/etc/lightdm/lightdm.conf:#autologin-in-background=false
/etc/lightdm/lightdm.conf:#autologin-session=UNIMPLEMENTED
/etc/systemd/system/[email protected]:ExecStart=-/sbin/agetty --autologin pi --noclear %I $TERM
コンテンツ/etc/lightdm/lightdm.conf
# General configuration
#
# start-default-seat = True to always start one seat if none are defined in the configuration
# greeter-user = User to run greeter as
# minimum-display-number = Minimum display number to use for X servers
# minimum-vt = First VT to run displays on
# lock-memory = True to prevent memory from being paged to disk
# user-authority-in-system-dir = True if session authority should be in the system location
# guest-account-script = Script to be run to setup guest account
# logind-load-seats = True to automatically set up multi-seat configuration from logind
# logind-check-graphical = True to on start seats that are marked as graphical by logind
# log-directory = Directory to log information to
# run-directory = Directory to put running state in
# cache-directory = Directory to cache to
# sessions-directory = Directory to find sessions
# remote-sessions-directory = Directory to find remote sessions
# greeters-directory = Directory to find greeters
#
[LightDM]
#start-default-seat=true
#greeter-user=lightdm
#minimum-display-number=0
#minimum-vt=7
#lock-memory=true
#user-authority-in-system-dir=false
#guest-account-script=guest-account
#logind-load-seats=false
#logind-check-graphical=false
#log-directory=/var/log/lightdm
#run-directory=/var/run/lightdm
#cache-directory=/var/cache/lightdm
#sessions-directory=/usr/share/lightdm/sessions:/usr/share/xsessions
#remote-sessions-directory=/usr/share/lightdm/remote-sessions
#greeters-directory=/usr/share/lightdm/greeters:/usr/share/xgreeters
#
# Seat defaults
#
# type = Seat type (xlocal, xremote)
# xdg-seat = Seat name to set pam_systemd XDG_SEAT variable and name to pass to X server
# pam-service = PAM service to use for login
# pam-autologin-service = PAM service to use for autologin
# pam-greeter-service = PAM service to use for greeters
# xserver-command = X server command to run (can also contain arguments e.g. X -special-option)
# xserver-layout = Layout to pass to X server
# xserver-config = Config file to pass to X server
# xserver-allow-tcp = True if TCP/IP connections are allowed to this X server
# xserver-share = True if the X server is shared for both greeter and session
# xserver-hostname = Hostname of X server (only for type=xremote)
# xserver-display-number = Display number of X server (only for type=xremote)
# xdmcp-manager = XDMCP manager to connect to (implies xserver-allow-tcp=true)
# xdmcp-port = XDMCP UDP/IP port to communicate on
# xdmcp-key = Authentication key to use for XDM-AUTHENTICATION-1 (stored in keys.conf)
# unity-compositor-command = Unity compositor command to run (can also contain arguments e.g. unity-system-compositor -special-option)
# unity-compositor-timeout = Number of seconds to wait for compositor to start
# greeter-session = Session to load for greeter
# greeter-hide-users = True to hide the user list
# greeter-allow-guest = True if the greeter should show a guest login option
# greeter-show-manual-login = True if the greeter should offer a manual login option
# greeter-show-remote-login = True if the greeter should offer a remote login option
# user-session = Session to load for users
# allow-user-switching = True if allowed to switch users
# allow-guest = True if guest login is allowed
# guest-session = Session to load for guests (overrides user-session)
# session-wrapper = Wrapper script to run session with
# greeter-wrapper = Wrapper script to run greeter with
# guest-wrapper = Wrapper script to run guest sessions with
# display-setup-script = Script to run when starting a greeter session (runs as root)
# display-stopped-script = Script to run after stopping the display server (runs as root)
# greeter-setup-script = Script to run when starting a greeter (runs as root)
# session-setup-script = Script to run when starting a user session (runs as root)
# session-cleanup-script = Script to run when quitting a user session (runs as root)
# autologin-guest = True to log in as guest by default
# autologin-user = User to log in with by default (overrides autologin-guest)
# autologin-user-timeout = Number of seconds to wait before loading default user
# autologin-session = Session to load for automatic login (overrides user-session)
# autologin-in-background = True if autologin session should not be immediately activated
# exit-on-failure = True if the daemon should exit if this seat fails
#
[SeatDefaults]
#type=xlocal
#xdg-seat=seat0
#pam-service=lightdm
#pam-autologin-service=lightdm-autologin
#pam-greeter-service=lightdm-greeter
#xserver-command=X
#xserver-layout=
#xserver-config=
#xserver-allow-tcp=false
#xserver-share=true
#xserver-hostname=
#xserver-display-number=
#xdmcp-manager=
#xdmcp-port=177
#xdmcp-key=
#unity-compositor-command=unity-system-compositor
#unity-compositor-timeout=60
#greeter-session=example-gtk-gnome
#greeter-hide-users=false
#greeter-allow-guest=true
#greeter-show-manual-login=false
#greeter-show-remote-login=true
#user-session=default
#allow-user-switching=true
#allow-guest=true
#guest-session=
#session-wrapper=lightdm-session
#greeter-wrapper=
#guest-wrapper=
#display-setup-script=
#display-stopped-script=
#greeter-setup-script=
#session-setup-script=
#session-cleanup-script=
#autologin-guest=false
autologin-user=pi
#autologin-user-timeout=0
#autologin-in-background=false
#autologin-session=UNIMPLEMENTED
#exit-on-failure=false
#
# Seat configuration
#
# Each seat must start with "Seat:".
# Uses settings from [SeatDefaults], any of these can be overriden by setting them in this section.
#
#[Seat:0]
#
# XDMCP Server configuration
#
# enabled = True if XDMCP connections should be allowed
# port = UDP/IP port to listen for connections on
# key = Authentication key to use for XDM-AUTHENTICATION-1 or blank to not use authentication (stored in keys.conf)
#
# The authentication key is a 56 bit DES key specified in hex as 0xnnnnnnnnnnnnnn. Alternatively
# it can be a word and the first 7 characters are used as the key.
#
[XDMCPServer]
#enabled=false
#port=177
#key=
#
# VNC Server configuration
#
# enabled = True if VNC connections should be allowed
# command = Command to run Xvnc server with
# port = TCP/IP port to listen for connections on
# width = Width of display to use
# height = Height of display to use
# depth = Color depth of display to use
#
[VNCServer]
#enabled=false
#command=Xvnc
#port=5900
#width=1024
#height=768
#depth=8
はい
masi@raspberrypi:~ $ sudo systemctl disable autologin@tty1
masi@raspberrypi:~ $ ps -fu pi
UID PID PPID C STIME TTY TIME CMD
pi 3496 1 0 09:38 ? 00:00:00 /lib/systemd/systemd --user
pi 3502 3496 0 09:38 ? 00:00:00 (sd-pam)
pi 3507 3491 0 09:38 tty1 00:00:00 -bash
masi@raspberrypi:~ $ sudo kill 3496 3502 3507
masi@raspberrypi:~ $ ps -fu pi
UID PID PPID C STIME TTY TIME CMD
pi 7062 1 1 21:46 ? 00:00:00 /lib/systemd/systemd --user
pi 7068 7062 0 21:46 ? 00:00:00 (sd-pam)
pi 7073 7056 6 21:46 tty1 00:00:00 -bash
文書/etc/systemd/system/[email protected]
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
[Unit]
Description=Getty on %I
Documentation=man:agetty(8) man:systemd-getty-generator(8)
Documentation=http://0pointer.de/blog/projects/serial-console.html
After=systemd-user-sessions.service plymouth-quit-wait.service
After=rc-local.service
# If additional gettys are spawned during boot then we should make
# sure that this is synchronized before getty.target, even though
# getty.target didn't actually pull it in.
Before=getty.target
IgnoreOnIsolate=yes
# On systems without virtual consoles, don't start any getty. Note
# that serial gettys are covered by [email protected], not this
# unit.
ConditionPathExists=/dev/tty0
[Service]
# the VT is cleared by TTYVTDisallocate
ExecStart=-/sbin/agetty --autologin pi --noclear %I $TERM
Type=idle
Restart=always
RestartSec=0
UtmpIdentifier=%I
TTYPath=/dev/%I
TTYReset=yes
TTYVHangup=yes
TTYVTDisallocate=yes
KillMode=process
IgnoreSIGPIPE=no
SendSIGHUP=yes
# Unset locale for the console getty since the console has problems
# displaying some internationalized messages.
Environment=LANG= LANGUAGE= LC_CTYPE= LC_NUMERIC= LC_TIME= LC_COLLATE= LC_MONETARY= LC_MESSAGES= LC_PAPER= LC_NAME= LC_ADDRESS= LC_TELEPHONE= LC_MEASUREMENT= LC_IDENTIFICATION=
[Install]
WantedBy=getty.target
DefaultInstance=tty1
はい
masi@raspberrypi:~ $ sudo systemctl stop autologin@tty1
masi@raspberrypi:~ $ ps -fu pi
UID PID PPID C STIME TTY TIME CMD
masi@raspberrypi:~ $ sudo deluser pi
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = "en_US.UTF-8",
LC_PAPER = "fi_FI.UTF-8",
LC_ADDRESS = "fi_FI.UTF-8",
LC_MONETARY = "fi_FI.UTF-8",
LC_NUMERIC = "fi_FI.UTF-8",
LC_TELEPHONE = "fi_FI.UTF-8",
LC_IDENTIFICATION = "fi_FI.UTF-8",
LC_MEASUREMENT = "fi_FI.UTF-8",
LC_TIME = "fi_FI.UTF-8",
LC_NAME = "fi_FI.UTF-8",
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Removing user `pi' ...
Warning: group `pi' has no more members.
Done.
質問
pi
現在のプロセスを削除すると、常にユーザー用の新しいプロセスが作成されます。これが起こるのを防ぐ方法は何ですか?
成功した試み[スティーブン]
する
masi@raspberrypi:~ $ sudo systemctl stop autologin@tty1
masi@raspberrypi:~ $ ps -fu pi
UID PID PPID C STIME TTY TIME CMD
masi@raspberrypi:~ $ sudo deluser pi
...
masi@raspberrypi:~ & sudo vim /etc/passwd
... pi no longer here!
masi@raspberrypi:~ & sudo deluser -remove-home pi
問題の解決策はlocale
スレッドにあります。ここ。
メディアautologin-user=pi
と交換してください。autologin-user=masi
/etc/lightdm/lightdm.conf
どうやって削除できますか?PIユーザーの成功?
答え1
ユーザーpi
がログインしていますtty1
。削除する前にユーザーからログアウトする必要があります。 (このmenu-cached
プロセスはLXDEデスクトップ環境で使用されます。ユーザーが実行している他のプロセスがある可能性がありますpi
。)
ユーザーをログアウトするためのGUIへのアクセス権がない場合(つまり、Raspberry Piにリモートでアクセスしている場合)最も安全なオプションは、おそらくデスクトップマネージャを停止することです。
sudo service lightdm stop
(LXDEのデフォルト値を使用すると仮定すると)、すべてのpi
プロセスが終了します。
また、自動ログイン()を無効にする必要がありますlogin -f
。
古いスタイルを使用している場合は、ファイルをinittab
編集して/etc/inittab
次の行を置き換えます。
1:2345:respawn:/bin/login -f pi tty1 </dev/tty1 >/dev/tty1 2>&1
(重要な部分は/bin/login -f pi tty1
)
1:2345:respawn:/sbin/getty 115200 tty1
次に、init
次を実行して再ロードします。
sudo telinit q
自動ログインには、システム単位(サービスなどautologin
)を使用してサービスを無効にします。
sudo systemctl --now disable autologin@tty1
これによりデバイスが停止し、システム構成が再ロードされます。
この時点でpi
まだ実行中のプロセスがある場合(図を参照ps -fu pi
)、そのプロセスを終了してください。再生成しないでください。
答え2
sudo raspi-config
コマンドラインから実行し、コマンドラインオプションの起動オプションを選択して実行しました。再起動後にユーザーpiを削除できました(Raspbianの新規インストール後にこれを実行しました)。