wsl用户帐户没有必要的权限_第一次使用WSL我做了什么

一直想要试试linux系统下,到底是怎么进行操作的,感觉那些命令行操作一直很酷,但是苦于麻烦,也没有闲置的电脑,就没
有用过linux。最近发下win下自动集成了一个简单的linux系统,感觉给我这样的新手试试水蛮好的。

WSL的安装和使用

WSL的安装

  • 第一步是要打开windows系统上关于linux的设置,具体路径:控制面板->程序和功能->启用或关闭Windows功能->勾选 适用于Linux的windows子系统。

    v2-ab04a7d7bbbe502bb877ed8ea087de3c_b.jpg

    v2-821c39aff5879d17888357ffae065d51_b.jpg

    v2-de0ab498766fbef874bc8193bad6cefc_b.jpg 或者也可以打开win+x,以管理员权限运行powershell,运行
    Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux命令
  • 重启电脑,确保我们的设置已经生效。

  • 打开Microsoft Store,搜索WSL,选择一个Linux系统进行安装就好,我选择的是

    v2-7bfb23cd2d6cb2c4103ae6d26afc7f20_b.jpg 这个大概200多M吧,下载起来还挺快的。
  • 安装完成之后,可以点击图标运行

    v2-ebb4083dba7792f728ba076e8929c6b5_b.jpg 运行完成,刚开始会进行初始化,可能需要等待2~3分钟,然后安装完成之后会提示输入用户名以及密码。注意,这个密码不是用来登录的密码,当你要以
    权限运行一些命令的时候,会要求输入这个密码,所以请记住。这里我们创建的用户就是一个一般的用户,之后我为了调整安装程序,又更改了
    账户的密码。
  • 安装完成之后就可以用了

WSL的使用

apt安装源的更改

linux下安装软件是从一些网站中直接提取安装包,然后打开。国外的网站不挂代理的话访问速度感人,国内有一些做的很优秀的镜像网站,源网站改成这些镜像网站可以提升下载速度。

  1. ubuntu下下载东西常用的命令是apt install packagename,后面的packagename就是我们要安装的东西,因此我主要更 换的就是apt的安装源。这里我们要修改的是sources.list文件,首先要备份一下

    sudo cp /ect/apt/sources.list /etc/apt/sources.list.bak
    

    需要注意的就是我们默认进入的Ubuntu是一个普通用户,所以要加上sudo以超级用户权限执行这个命令,这里应该会要求你输入密码,注意这个密码就是最开始让你设置的那个密码,而且linux中的密码是不回显的,而且不能通过backspace进行删除,输错了只能重输。

  2. 备份完了之后就是对source.list进行更改了。我下载的ubuntu 18.04 LTS自带了vim,如果你的不带vim的话,需要运行sudo apt-get install vim进行安装(基本上每次使用sudo这个命令,都要输入密码,这也是为什么我最后选择进入root账户进行修改,太麻烦辽).

    • 这里提一嘴哈,vim是一个文本编辑器,基本上相当于win下比较高级的记事本,使用过程中完全不用鼠标。基本上就是通过键盘进行操作。 当你运行了vim之后,就进入了文件中,注意,你此时并不是在编辑的环境,而是处于一个要输入命令的过程,常见的命令:q:退出;q!强制退出,放弃修改;wq:将当前修改写入文件中,并退出。然后输入命令之前,要按一下:,注意是英文。 进入编辑界面,按一下i,就是insert模式,也就是编辑模式,上下左右移动光标,正常输入即可。 按esc退出编辑模式,进入命令模式。

    输入

    sudo vim /etc/apt/sources.list
    

    然后就进入了文件页面,将原文件里面原来的内容全部注释掉(在原来的每一行前面加#),然后添加下面的内容。

    deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
    

    然后修改源文件后记得写入退出,也就是wq命令。 这里使用的是阿里的镜像网站,还有其他的几个镜像网站可以选择,注意,只用选一个就可以了。 中科大

    deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
    deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
    deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
    deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
    deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
    deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
    deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
    deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
    deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
    deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
    

    清华

    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
    deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
    deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
    deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
    deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
    deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
    

    网易

    deb http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
    deb http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
    deb http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
    deb http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
    deb http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse
    deb-src http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
    deb-src http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
    deb-src http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
    deb-src http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
    deb-src http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse
    
  3. 修改好了source.list之后,就要更新软件列表和软件源

    sudo apt-get update
    sudo apt-get upgrade
    
中文显示的更改
  • 首先运行echo $LANG查看当前你的语言环境

    v2-0e2021819d8d265d16101d152388af2c_b.jpg 我这里已经调整好了,所以显示的是
    zh_CN.UTF-8,如果你显示的前面不是zh_CN,基本上就说明不是中文环境。 更详细的环境可以通过输入locale进行查看

    v2-e98087da55e94fcf684e3411c4c8191f_b.jpg
  • 这里我说的中文安装包都是指的简体中文哈,因为我自己看简中,另一个也没查。 输入下列代码安装中文语言包

    sudo apt-get install language-pack-zh-han*
    

    然后就会开始下载,更换了apt安装源之后,还是蛮快的。

  • 下载完成之后,再运行下列代码运行语言支持

    sudo apt install $(check-language-support)
    
  • 接着再修改一下配置文件就好 先进入配置文件

    vim /etc/default/locale
    

    然后把其中的内容改成如下内容,原来的内容加#注释掉就好

    LANG="zh_CN.UTF-8"
    LANGUAGE="zh_CN:zh"
    LC_NUMERIC="zh_CN"
    LC_TIME="zh_CN"
    LC_MONETARY="zh_CN"
    LC_PAPER="zh_CN"
    LC_NAME="zh_CN"
    LC_ADDRESS="zh_CN"
    LC_TELEPHONE="zh_CN"
    LC_MEASUREMENT="zh_CN"
    LC_IDENTIFICATION="zh_CN"
    LC_ALL="zh_CN.UTF-8"
    
  • 再修改环境文件

    vim /etc/environment 
    

    这里强调的是不要更改原来的内容,后果我也不知道是啥QAQ,在原内容下面新开一行加入下面的内容

    LANG="zh_CN.UTF-8"
    LANGUAGE="zh_CN:zh"
    LC_NUMERIC="zh_CN"
    LC_TIME="zh_CN"
    LC_MONETARY="zh_CN"
    LC_PAPER="zh_CN"
    LC_NAME="zh_CN"
    LC_ADDRESS="zh_CN"
    LC_TELEPHONE="zh_CN"
    LC_MEASUREMENT="zh_CN"
    LC_IDENTIFICATION="zh_CN"
    LC_ALL="zh_CN.UTF-8"
    
  • 最后重启一下系统就可以了

    reboot
    
关于linux下的中文显示

这部分是最折腾我的,要了解linux下为什么我们的cpp文件里面的中文没有办法显示,就要首先了解一点文件编码方式。

文件编码方式的不同
  • 在中文的win操作系统下,通常来说含有中文字符的文档都是以GBK格式进行编码的,用记事本打开的话,显示的就是ANSI

    v2-47fceed1327843746925b010fc5fcac5_b.jpg
  • linux下,系统认得文件格式是utf-8格式

这两个格式对于英文字符没有太大的区别,对于中文字符,在GBK格式中,一个字符占2个字节;但是在utf-8格式中,一个字符占3个字节,因此导致了中文显示乱码。

如何正常查看中文文件
  • 如果为了能够在linux下进行显示和编译,最方便的方法就是将你的文件转化为utf-8格式,用记事本打开文件,点击另存为,把ANSI换成utf-8就好了

  • 如果只是打开中文文件查看不乱码,可以通过对vim的一些设置做到,设置步骤如下:

    1. 打开文件
    sudo vim /var/lib/locales/supported.d/local
    
    1. 原有内容不变,添加下列内容

      zh_CN.GBK GBK
      zh_CN.GB2312 GB2312
      zh_CN.GB18030 GB18030
      
    2. 执行命令,使配置生效

      sudo dpkg-reconfigure locales
      

      这里运行完这个命令之后,会进入一个图形界面,然后第一个就选择所有区域,第二个选择zh_CN.UTF-8就可以了(选择其他的中文环境,比如说zh_CN.GBKzh_CN.GB2312,会导致linux下中文显示乱码,我没弄懂什么原因,有大佬可以提点一下嘛)

    3. 打开文件

      sudo vim /etc/vim/vimrc
      
    4. 不用更改原文件内容,在文件末尾添加

      set fileencodings=utf-8,gbk,utf-16le,cp1252,iso-8859-15,ucs-bom
      set termencoding=utf-8
      set encoding=utf-8
      

    在然后用vim打开的中文文件,里面的中文字符就可以正常显示,不管是GBK格式还是utf-8格式

配置结束

作为萌新,我也就做了这些,就够我正常上课使用了,但是我在使用过程中遇到了一个问题,不知道怎么解决。

c++进行格式化输出的时候,我用的是cout << setw(20) << "测试用例"进行排版的控制 但是由于utf-8中,一个中文等于3个字节,那么就是说utf-8格式中,我的"测试用例"占12个字节,系统就会输出8个空格作为格式补齐,但是由于在屏幕上一个中文宽度约等于两个英文字符的宽度(也就是两个空格),所以就导致我的屏幕宽度只占到了16个英文字符宽度 而我的cout<< setw(20)本来是想要屏幕宽度为20个英文字符,这该怎么解决呢,或者说用解决吗?

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值