Tag Info

Hot answers tagged

128

How about using the su command? $ whoami user1 $ su - user2 Password: $ whoami user2 $ exit logout If you want to log in as root, there's no need to specify username: $ whoami user1 $ su - Password: $ whoami root $ exit logout Generally, you can use sudo to launch a new shell as the user you want; the -u flag lets you specify the username you want: $ ...


60

There's probably an easier way, but I do this: See who's logged into your machine -- use who or w: > who mmrozek tty1 Aug 17 10:03 mmrozek pts/3 Aug 17 10:09 (:pts/2:S.0) Look up the process ID of the shell their TTY is connected to: > ps t PID TTY STAT TIME COMMAND 30737 pts/3 Ss 0:00 zsh Laugh at their ...


60

On Debian, the adduser package contains a deluser program which removes a user from a group if you pass both as arguments: deluser user group If your distribution doesn't have adduser, you can edit /etc/group and /etc/gshadow manually. vigr vigr -s


44

passwd -l is what you want. That will lock the user account. But you'll still be able to su - user but you'll have to su - user as root. Alternatively, you can accomplish the same thing by prepending a ! to the user's password in /etc/shadow (this is all passwd -l does behind the scenes). passwd -u will undo it.


40

The devil is in the details, in the useradd man page (you can see that by issuing man 8 useradd): -u, --uid UID The numerical value of the user's ID. This value must be unique, unless the -o option is used. The value must be non-negative. The default is to use the smallest ID value greater than or equal to UID_MIN and greater ...


36

Try usermod --move-home --login <new-login-name> --home <new-home-dir> <old-login-name> The --move-home option moves the old home directory's contents to the new one given by the --home option which is created if it doesn't already exist. If you want the primary user group to match the new-login-name, add --gid <new-login-name> to ...


31

For the same reasons why each daemon should have minimal rights. Apache can run as root. It is designed to perform one task and surely nothing bad can happen? But assume apache is not bug-free. Bugs are discovered from time to time. Sometimes it can even be arbitrary code execution or similar. Now with apache running as root, it can access anything — for ...


30

id -u somename returns a non-zero exit code when the user does not exist. You can test it quite simply... (&>/dev/null just supresses the normal output/warning) id -u somename &>/dev/null || useradd somename


29

When booting, append init=/bin/bash (or a path to any other functional shell) to your boot options - you will be dropped straight to a single user shell. You might need to do mount -o remount,rw / before modifying the /etc/passwd entry in that environment. After that, just reboot or do exec /sbin/init 3. Just do not type exit or press Ctrl+D, as these would ...


28

Well, OpenSSH private keys with empty passphrases are actually not encrypted. Encrypted private keys are declared as such in the private key file. For instance: -----BEGIN RSA PRIVATE KEY----- Proc-Type: 4,ENCRYPTED DEK-Info: DES-EDE3-CBC,7BD2F97F977F71FC BT8CqbQa7nUrtrmMfK2okQLtspAsZJu0ql5LFMnLdTvTj5Sgow7rlGmee5wVuqCI ...


27

First off, the respective man page snippets highlight the differences between the two commands and give some indication of what is going on. For adduser: adduser and addgroup add users and groups to the system according to command line options and configuration information in /etc/adduser.conf. They are friendlier front ends to the low level ...


26

ulimit is made for this. You can setup defaults for ulimit on a per user or a per group basis in /etc/security/limits.conf ulimit -v KBYTES sets max virtual memory size. I don't think you can give a max amount of swap. It's just a limit on the amount of virtual memory the user can use. So you limits.conf would have the line (to a maximum of 4G of ...


24

As Micheal already pointed out, you can use who to find out who's logged in. However if they have multiple processes, there's a more convenient way than killing each process individually: you can use killall -u username to kill all processes by that user.


24

You can also ride a motorcycle in the nude, and nothing may happen. But I bet you'd feel better if you had when you crash the bike...


24

TL;DR: No, password are stored as hashes which can (in general) not be recovered. Linux doesn't store plain-text passwords anywhere by default. They are hashed or otherwise encrypted through a variety of algorithms. So, in general, no, this isn't possible with stored data. If you have passwords stored somewhere other than the /etc/passwd database, they ...


21

The correct way according to usermod(8) is: usermod --lock --expiredate 1970-01-01 <username> (Actually, the argument to --expiredate can be any date before the current date in the format YYYY-MM-DD.) Explanation: --lock locks the user's password. However, login by other methods (e.g. public key) is still possible. --expiredate YYYY-MM-DD ...


21

I don't have an OSX system handy to check on but on all *nixes, ~foo is a shorthand for the home directory of user foo. For example, this command will move into my user's $HOME (cd ~ alone will move into your home directory): cd ~terdon So, ~ and Tab will expand to all possible user names. The list should be the same as the list of users in /etc/passwd. ...


20

Generally you use sudo to launch a new shell as the user you want; the -u flag lets you specify the username you want: [mrozekma@etudes-1 ~] % whoami mrozekma [mrozekma@etudes-1 ~] % sudo -u nobody zsh [nobody@etudes-1 ~] % whoami nobody There are more circuitous ways if you don't have sudo access, like ssh username@localhost, but I think sudo is probably ...


20

That is not a technical difference but an organizational decision. E.g. it makes sense to show normal users in a login dialog (so that you can click them instead of having to type the user name) but it wouldn't to show system accounts (the UIDs under which daemons and other automatic processes run) there. Thus a border is defined or rather two ranges for ...


20

Add the following in your ~/.ssh/config file: Host myserver.cz User tohecz Host anotherserver.cz User anotheruser You can specify a lot of default parameters for your hosts using this file. Just have a look at the manual for other possibilities.


19

pwgen is one of many programs for generating passwords


19

For past logins: last "$USER_NAME" Also, the command who lists current logins. If you're looking for the date of the user's last login, some systems provide it directly, for example lastlog -u "$USER_NAME" on Linux or lastlogin "$USER_NAME" on FreeBSD. It's also available in the output of finger, but not in an easy-to-parse form. In any case, it's ...


19

Local solution: use su yourself to login again. In the new session you'll be considered as a member of the group. Man pages for newgrp and sg might also be of interest to change your current group id (and login into a new group): To use webdev's group id (and privileges) in your current shell use: newgrp webdev To start a command with some group id ...


19

Try getent passwd "$uid" | cut -d: -f1


18

root is a user (the super user) and wheel is a group (of super users I guess). chown root:wheel myfile means making myfile belong to the user root and the group wheel (read man chown for more information).


18

From https://github.com/zolrath/wemux: wemux enhances tmux to make multi-user terminal multiplexing both easier and more powerful. It allows users to host a wemux server and have clients join in either: Mirror Mode gives clients (another SSH user on your machine) read-only access to the session, allowing them to see you work, or Pair Mode ...


17

Probably john's shell is not /bin/bash, but /bin/sh. On Ubuntu, that's a shell intended to execute scripts fast, with no fancy interactive features such as command line edition. Check last column of grep john /etc/passwd or getent passwd john. You might want to run chsh -s /bin/bash john to change user's shell.


16

Use of passwd -d is plain wrong , at least on Fedora, on any linux distro based on shadow-utils. If you remove the password with passwd -d, it means anyone can login to that user (on console or graphical) providing no password. In order to block logins with password authentication, run passwd -l username, which locks the account making it available to the ...


16

Under no circumstances would anyone want to do that. This is what sudo is for, to give users the ability to run things as root. Giving a non-root user all the permissions of root is inadvisable because they would then be able to do literally anything, so if that user account was hijacked, you'd be in trouble. Summary of above: Don't try to give the user ...



Only top voted, non community-wiki answers of a minimum length are eligible