Ubuntu下user权限设置、环境变量设置、乱码、固定IP

首先设置IP
sudo gedit /etc/network/interface
 
将其内容删除
 
加上一下内容
 
auto lo
iface lo inet loopback
 
auto etho
iface etho inet static
address 220.158.11.129
netmask 255.255.255.0
network 220.158.0.0
broadcast 220.158.0.255
gateway 220.158.0.1
 
保存
 
然后修改DNS
sudo gedit /etc/resolv.conf
 
将内容修改为
nameserver 202.103.24.68
 
保存
 
重启网络连接
sudo /etc/init.d/networking stop

sudo /etc/init.d/networking start


用户权限设置:chown -R user:group文件夹(/home/lanhaitun)


乱码处理:

打开vim的配置文件,位置在/etc/vim/vimrc,在其中加入


set fileencodings=utf-8,gb2312,gbk,gb18030


set termencoding=utf-8 “根据需要变更为其他


set encoding=prc


保存退出,此时vim就能正确显示中文了。


环境变量设置:

1.有些命令的路径没有在PATH环境变量中,可以用echo $PATH命令查询得知,添加路径到PATH环境变量的方法如下:
  (如添加/sbin到PATH环境变量中)
  (1)如果只想在本次开机过程中临时性的添加修改,下次开机就无效的话,可以:
  输入export PATH=$PATH:/sbin
  (2)如果只给当前用户永久添加,则:
  在~/.bash_profile中的靠近末尾有类似这样的一行PATH=$PATH:$HOME/bin后添加:/sbin,就变成PATH=$PATH:$HOME/bin:/sbin
  文件修改并保持完以后,运行source ~/.bash_profile命令即可使修改操作立即生效
  (3)如果给系统中所有的用户都永久添加,则:
  在/etc/profile文件末尾添加export PATH=$PATH:/sbin
  文件修改并保持完以后,运行source etc/profile命令即可使修改操作立即生效

 
<think>我们正在讨论如何设置Linux命令行登录后显示的内容。根据用户的问题和之前的引用,用户可能想要自定义登录后的欢迎信息或提示符样式。在Linux中,有几个位置可以设置登录后显示的信息: 1. **/etc/motd** (Message of the Day): 用户登录后显示的信息,对所有用户生效。 2. **/etc/issue**: 在本地终端登录前显示,但不影响远程登录(如SSH)。 3. **/etc/issue.net**: 用于远程登录(如SSH)的登录前提示。 4. **~/.bashrc** 或 **~/.profile**: 用户个人的shell配置文件,可以设置提示符(PS1)和登录后执行的命令(如echo信息)。 另外,引用[4]提到了/etc/motd文件,并说明该文件的内容会在用户登录后显示,而且注释符号也会被打印出来。 用户的问题集中在“命令行登录后显示内容设置”,因此我们将重点放在登录后显示的信息,即motd和用户配置文件。 ### 1. 设置系统级的登录后消息(/etc/motd) 修改`/etc/motd`文件可以设置所有用户登录后显示的消息。步骤如下: ```bash # 使用root权限编辑/etc/motd文件 sudo vim /etc/motd ``` 在文件中输入你想要显示的信息,例如: ``` 欢迎使用Linux系统! 今天是 $(date) # 注意:这里不会动态解析命令,会直接显示字符串 ``` 注意:`/etc/motd`文件中的内容会原样输出,不支持动态命令(如上面的`$(date)`不会执行,只会显示为字符串)。如果需要动态内容,可以使用其他方法(如通过脚本生成motd)。 **动态motd**:一些系统(如Ubuntu)使用`pam_motd`模块,它支持在`/etc/update-motd.d/`目录下放置可执行脚本。这些脚本会在用户登录时执行,并将输出组合成motd。 例如,在Ubuntu中,你可以创建一个脚本: ```bash sudo vim /etc/update-motd.d/99-custom ``` 脚本内容(注意脚本需要有可执行权限): ```bash #!/bin/sh echo "欢迎登录,今天是 $(date)" ``` 然后设置可执行权限: ```bash sudo chmod +x /etc/update-motd.d/99-custom ``` 这样,用户登录时就会显示动态生成的欢迎信息。 ### 2. 设置用户个人的登录后消息 如果你想为每个用户设置不同的登录消息,可以在用户的家目录下的配置文件中添加,比如`~/.bashrc`或`~/.profile`。 例如,在`~/.bashrc`中添加: ```bash echo "欢迎回来, $USER!" # 或者 echo "当前时间是: $(date)" ``` 注意:每次打开新的bash终端(包括登录)都会执行`.bashrc`中的命令。如果你只想在登录时显示,可以添加到`~/.profile`或`~/.bash_profile`(针对bash用户)。 ### 3. 设置命令行的提示符样式(PS1) 提示符样式通过环境变量`PS1`设置。可以在`~/.bashrc`中修改: ```bash # 设置绿色用户和主机名,蓝色当前目录,红色提示符 PS1='\[\e[32;1m\]\u@\h \[\e[34;1m\]\w\[\e[0m\] \[\e[31;1m\]\$ \[\e[0m\]' ``` 也可以使用一些预定义的颜色方案。修改后执行`source ~/.bashrc`立即生效。 ### 4. 设置登录前显示的信息(/etc/issue) 引用[2]提到,修改`/etc/issue`可以在本地终端登录前显示信息。例如: ```bash sudo vim /etc/issue ``` 添加内容(可以使用转义序列,如`\n`显示主机名): ``` 欢迎登录 \n 今天是 \d \t ``` 注意:这个信息在用户输入用户名之前显示,且只影响本地终端(tty),不影响SSH。 ### 5. 设置SSH登录前的信息(/etc/issue.net) 对于SSH登录,修改`/etc/issue.net`。同时,需要在SSH配置中启用它(`/etc/ssh/sshd_config`): ```bash # 确保sshd_config中有以下行 Banner /etc/issue.net ``` 然后重启SSH服务。 ### 总结步骤 根据用户需求,选择合适的位置进行设置: - 系统级登录后消息:修改`/etc/motd`(静态)或使用`/etc/update-motd.d/`(动态)。 - 用户个人登录后消息:修改`~/.bashrc`或`~/.profile`。 - 命令行提示符:修改`~/.bashrc`中的PS1变量。 - 本地登录前消息:修改`/etc/issue`。 - SSH登录前消息:修改`/etc/issue.net`并配置SSH。 ### 注意事项 - 在修改系统文件前,建议备份。 - 动态motd脚本需要可执行权限,并且注意脚本的执行顺序(按数字顺序)。 - 如果修改后没有立即生效,可以尝试重新登录。 ### 示例:设置动态motd 以Ubuntu为例,创建自定义motd脚本: 1. 创建脚本文件: ```bash sudo vim /etc/update-motd.d/99-hello ``` 2. 内容: ```bash #!/bin/bash printf "欢迎登录 %s\n" "$(hostname)" printf "当前时间: %s\n" "$(date)" printf "系统负载: %s\n" "$(uptime)" ``` 3. 赋予执行权限: ```bash sudo chmod +x /etc/update-motd.d/99-hello ``` 4. 测试:直接运行脚本看输出,然后重新登录查看效果。 ### 相关问题 1. 如何让motd显示系统运行时间和负载? 2. 如何为不同用户设置不同的登录消息? 3. 如何恢复默认的motd设置? 4. 如何设置SSH登录后的欢迎信息? [^1]: 引用自用户提供的引用[4] [^2]: 引用自用户提供的引用[2]</think>### Linux 命令行登录后显示内容设置详解 在 Linux 中,命令行登录后显示的内容可通过多种方式自定义,主要涉及以下文件(按优先级排序): #### 1. **系统级欢迎信息(登录前显示)** - **文件位置**:`/etc/issue` - **作用**:本地终端登录前显示(对 SSH 远程登录无效) - **配置示例**: ```bash sudo vim /etc/issue ``` 添加内容: ``` 欢迎登录 \n 服务器 内核版本: \r 当前日期: \d 主机名: \n ``` - **转义符说明**: - `\r`:内核版本 - `\l`:虚拟控制台号 - `\d`:当前日期 - `\n`:主机名 - `\m`:CPU 架构 - **效果**:用户输入用户名前显示此信息[^2] #### 2. **系统级欢迎信息(登录后显示)** - **文件位置**:`/etc/motd` (Message of the Day) - **作用**:所有用户登录后显示 - **配置示例**: ```bash sudo vim /etc/motd ``` 添加内容: ``` ===== 重要通知 ===== 系统将于 2023-12-25 00:00 进行维护 ==================== ``` - **注意**: - 文件内所有内容(包括注释 `#`)都会直接显示 - 支持多行文本和 ASCII 艺术字 - 立即生效(用户下次登录时可见)[^4] #### 3. **用户级欢迎信息** - **文件位置**:`~/.bashrc` 或 `~/.profile` - **作用**:为特定用户定制登录后显示内容 - **配置示例**: ```bash vim ~/.bashrc ``` 添加内容: ```bash echo "===== 个性化欢迎信息 =====" echo "用户名: $USER" echo "登录时间: $(date)" echo "系统负载: $(uptime)" echo "=========================" ``` - **生效方式**: ```bash source ~/.bashrc # 立即生效当前会话 ``` #### 4. **SSH 专属欢迎信息** - **文件位置**:`/etc/issue.net` - **配置步骤**: 1. 编辑文件: ```bash sudo vim /etc/issue.net ``` 2. 修改 SSH 配置: ```bash sudo vim /etc/ssh/sshd_config ``` 取消注释: ``` Banner /etc/issue.net ``` 3. 重启 SSH 服务: ```bash sudo systemctl restart sshd ``` #### 5. **高级动态信息** 结合脚本生成动态内容(需添加执行权限): ```bash sudo vim /etc/update-motd.d/10-sysinfo ``` 内容示例: ```bash #!/bin/sh echo "----- 实时系统状态 -----" echo "主机名: $(hostname)" echo "IP 地址: $(hostname -I | cut -d' ' -f1)" echo "内存使用: $(free -m | awk '/Mem/{print $3"MB/"$2"MB"}')" echo "在线用户: $(who | wc -l)" ``` #### 配置优先级总结 | 文件位置 | 生效范围 | 显示时机 | 特点 | |-------------------|------------|----------------|--------------------------| | `/etc/issue` | 本地终端 | 输入用户名前 | 支持系统信息转义符[^2] | | `/etc/motd` | 所有用户 | 登录成功后 | 静态内容,支持多行[^4] | | `/etc/issue.net` | SSH 用户 | 输入密码前 | 需配合 SSH 配置 | | `~/.bashrc` | 单个用户 | 登录成功后 | 可添加个性化动态信息 | > **注意**:修改系统级文件需要 `sudo` 权限,用户级文件修改后需 `source` 或重新登录生效。 #### 解决中文乱码问题 若显示乱码,尝试: ```bash unset LANG # 临时解决 sudo vim /etc/default/locale # 永久修改 ``` 将内容改为: ``` LANG="en_US.UTF-8" LC_ALL="en_US.UTF-8" ```[^1] ### 示例效果 登录后可能显示: ``` ===== 重要通知 ===== 系统将于 2023-12-25 00:00 进行维护 ==================== ----- 实时系统状态 ----- 主机名: myserver IP 地址: 192.168.1.100 内存使用: 512MB/2048MB 在线用户: 3 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值