Ubuntu个人使用笔记整理 Ubuntu笔记

Ubuntu笔记

Ubuntu使用过程中整理的一些常用或关键操作整理,以备不时之需,

另外自己可以对界面做一些美化,这部分自行百度去配置,我的界面如图

复制代码
##################Ubuntu18.04版###########################
1.########################换源##############################

1) 备份默认的apt源

1 $ cd /etc/apt 2 $ sudo cp sources.list sources.list.backup 2) 编辑 $ sudo gedit sources.list 复制粘贴以下列表: deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse ##测试版源 deb http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse # 源码 deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse ##测试版源 deb-src http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse # Canonical 合作伙伴和附加 deb http://archive.canonical.com/ubuntu/ xenial partner deb http://extras.ubuntu.com/ubuntu/ xenial main 3) 注意,每次修改完apt源,一定要执行一下更新 ##更新 sudo apt-get update 更新源 sudo apt-get upgrade 更新软件 2.########################配置c++环境###################  sudo apt-get install build-essential //安装了该软件包,编译c/c++所需要的软件包也都会被安装。 3.############################python3.6#######################  ubuntu18版本默认安装Python3.6,没安装2.7等 其他 sudo apt-get install python3.6 调整Python3的优先级,使得3.6优先级较高 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.5 1 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 2 更改默认值,python默认为Python2,现在修改为Python3 sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 100 sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 150 输入命令sudo apt-get install python3-pip安装pip 输入命令sudo pip3 install --upgrade pip更新pip 接下来,安装Django: sudo apt install python3-django sudo pip install Django==1.11.13 sudo pip install Django==2.1.5 通过键入以下内容来测试安装是否成功: django-admin --version 安装pyecharts pip install pyecharts 卸载Python包命令 pip uninstall xlrd 远程运行django命令: python manage.py runserver 0.0.0.0:8000 刘旸项目 pyecharts配置: ⁄usr⁄local⁄lib⁄python3.6/dist-packages/constants.py 添加 DEFAULT_HOST="../static/js" 4 。##########################lamp#############################  可从网上找相关资料 MySQL 1.安装MySQL 首先查看一下自己PC是否安装了其他版本的mysql,有则删之。。。 查看版本号: mysql -V apt-get autoremove --purge mysql-server-版本号 apt-get autoremove mysql-server apt-get remove mysql-common dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P 至此,卸载完成 #命令1 sudo apt-get update #命令2 sudo apt-get install mysql-server mysql-client 2.1 安装配置 sudo mysql_secure_installation 2.2 检查mysql服务状态: systemctl status mysql.service 设置密码等级 sudo su mysql set global validate_password_policy=0; 设置密码长度 set global validate_password_length=4; 以root进入mysql后也可用命令给root设置密码: #这个为允许本地登录 GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "123456"; #这个为允许远程登录 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '8341' WITH GRANT OPTION; 设置Ubuntu18.04安装MySQL后普通用户登录 sudo su mysql select user, plugin from mysql.user; 发现MySQL的root用户的plugin被修改了,只有换成mysql_native_password才可以使用密码登录MySQL。 使用下面的命令更改plugin,同时设置MySQL的root访问密码 update mysql.user set authentication_string=PASSWORD('8341'), plugin='mysql_native_password' where user='root'; #刷新权限 flush privileges; 退出后,切换到普通用户shell并重启MySQL,即可使用root用户和上一步设置的root密码登录MySQL。 重启mysql: 方式一:sudo/etc/init.d/mysql restart 方式二:sudo service mysql restart ====================忘了mysql密码,从网上找到的解决方案记录在这里==================== 结束当前正在运行的mysql进程 # /etc/init.d/mysql stop  用mysql安全模式运行并跳过权限验证 # mysqld_safe --user=mysql --skip-grant-tables --skip-networking &  用空密码方式使用root用户登录 MySQL # mysql -u root mysql  更新密码 # update user set Password = PASSWORD('root') where User ='root';  刷新权限 # FLUSH PRIVILEGES;  退出 # quit 4.1#########################phpmyadmin###########################  apt-get 安装 sudo apt-get install phpmyadmin 已有的虚拟主机目录建立软连接 sudo ln -s /usr/share/phpmyadmin/ /var/www/ 但是 ubuntu中的mysql 默认是不允许的 所以要修改mysql的配置 sudo vim /etc/mysql/my.cnf #修改 bind-address 白名单 取消掉 5.############################Vim################################  重新安装vim: sudo apt-get remove vim-common sudo apt-get install vim 或 执行下面的命令就自动安装好了: wget -qO- https://raw.github.com/ma6174/vim/master/setup.sh | sh -x 6.#########################Django部署到apache2########################### 教程见自强学堂 https://code.ziqiangxuetang.com/django/django-deploy.html apt-get update #获取更新列表 apt-get install apache2 #安装 Apache2 Restart Apache 2 Server /重启apache服务 #修改 /etc/apache2/envvars 文件添加下面两句 配置中文环境 export LANG='zh_CN.UTF-8' export LC_ALL='zh_CN.UTF-8' apt-get install libapache2-mod-wsgi-py3  #让 Apache2识别 Python3 程序的请求,安装 mod-wsgi模块  确认安装的 Apache2 版本号 apachectl -v ls /user/bin | grep python 默认的版本改为Python 3 apachectl -v 查看apache2版本号,本次实验是安装的是Apache 2.4.18 安装 Python 的 pip 组件管理程序和虚拟机环境程序 virtualenv pip3 install virtualenv ,可不装 Django项目中顺手新建两个文件夹: mkdir static mkdir media 在 /etc/apache2/sites-available/下新建一个文件 这里我把它命名为mysite.conf,文件名可任意取。 sudo vim /etc/apache2/sites-available/mysite.conf 在mysite.conf文件下输入: (端口为8000,同时后面要为其添加监听端口8000,见后面) <VirtualHost *:8000> ServerName www.XXX.com(这里替换成你自己域名) ServerAlias anothername.com ServerAdmin 1249223183@qq.com(这里替换成你自己的邮箱) DocumentRoot /var/www/djangotest/ (这里的参数替换成你自己的项目的目录) Alias /media/ /var/www/djangotest/media/ Alias /static/ /var/www/djangotest/static/ <Directory /var/www/djangotest/media> Require all granted </Directory> <Directory /var/www/djangotest/static> Require all granted </Directory> WSGIScriptAlias / /var/www/djangotest/djangotest/wsgi.py <Directory /var/www/djangotest/djangotest> <Files wsgi.py> Require all granted </Files> </Directory> </VirtualHost> 这里我的项目地址位置 /var/www/djangotest/目录下 修改你项目中的wsgi.py文件,改为以下内容 import os from os.path import join,dirname,abspath import sys #3 PROJECT_DIR = dirname(dirname(abspath(__file__))) #4 from django.core.wsgi import get_wsgi_application sys.path.insert(0,PROJECT_DIR) #5 os.environ.setdefault("DJANGO_SETTINGS_MODULE", "djangotest.settings") #这里将settings文件换成你自己的settings即可 application = get_wsgi_application() 3,4,5 为新加的内容,作用是让脚本找到django项目的位置,也可以在mysite.conf中做, 用WSGIPythonPath,想了解的自行搜索, 第 7 行如果一台服务器有多个django project时一定要修改 成上面那样,否则访问的时候会发生网站互相串的情况,即访问A网站到了B网站,一会儿正常, 一会儿又不正常(当然也可以使用 mod_wsgi daemon 模式) 5. 设置目录和文件权限 一般目录权限设置为 755,文件权限设置为 644 sudo chmod -R 644 j1945LibraryMS #项目为djangotest sudo find j1945LibraryMS -type d | xargs chmod 755 apache 服务器运行用户可以在 /etc/apache2/envvars 文件里面改,这里使用的是默认值, 当然也可以更改成自己的当前用户,这样的话权限问题就简单很多,但在服务器上推荐有 www-data 用户, 更安全。以下是默认设置 export APACHE_RUN_USER=www-data export APACHE_RUN_GROUP=www-data 上传文件夹权限 media 文件夹一般用来存放用户上传文件,static 一般用来放自己网站的js,css,图片等,在settings.py中的相关设置 STATIC_URL 为静态文件的网址 STATIC_ROOT 为静态文件的根目录, MEDIA_URL 为用户上传文件夹的根目录,MEDIA_URL为对应的访问网址 在settings.py中设置: # Static files (CSS, JavaScript, Images) # https://docs.djangoproject.com/en/dev/howto/static-files/ STATIC_URL = '/static/' STATIC_ROOT = os.path.join(BASE_DIR,'static') # upload folder MEDIA_URL = '/media/' MEDIA_ROOT = os.path.join(BASE_DIR,'media') STATICFILES_DIRS=[ ('css',os.path.join(STATIC_ROOT,'css').replace('\\','/')), ('images',os.path.join(STATIC_ROOT,'images').replace('\\','/')), ('js',os.path.join(STATIC_ROOT,'js').replace('\\','/')), #os.path.join(BASE_DIR, "/static/"), #index page static found here #STATIC_ROOT=os.path.join(BASE_DIR,"static/")#错误 #STATIC_ROOT=os.path.join(BASE_DIR,"/static/")#正确  ] 在 Linux 服务器上,用户上传目录还要设置给 www-data 用户的写权限,下面的方法比较好,不影响原来的用户的编辑。 假如上传目录为 zqxt/media/uploads 文件夹,进入media文件夹,将 uploads 用户组改为www-data,并且赋予该组写权限: cd media/ # 进入media文件夹 sudo chgrp -R www-data j1945LibraryMS sudo chmod -R g+w j1945LibraryMS 如果你使用的是sqlite3数据库,还会提示 Attempt to write a readonly database,同样要给www-data写数据库的权限 进入项目目录的上一级,比如project目录为 /home/tu/blog 那就进入 /home/tu 执行下面的命令(和修改上传文件夹类似) sudo chgrp www-data j1945LibraryMS sudo chmod g+w j1945LibraryMS sudo chgrp www-data j1945LibraryMS/db.sqlite3 # 更改为你的数据库名称 sudo chmod g+w j1945LibraryMS/db.sqlite3 6. 激活新网站 sudo a2ensite mysite 或 sudo a2ensite mysite.conf 下面可不用再执行 a2ensite /etc/apache2/sites-available/mysite.conf //加载自己新的网站 a2dissite /etc/apache2/sites-available/000-default.conf //让默认的失效 sudo /etc/init.d/apache2 reload //重新加载 sudo /etc/init.d/apache2 restart //重启apache服务 7. 错误排查 一,没有静态文件,网站打开很乱,没有布局,多半是静态文件没有生效。 确保你的配置文件中的路径是正确的 确保你的settings.py中的文件设置正确 收集静态文件(详细静态文件部署教程) 如果这样做还看不到出错信息,只是显示一个服务器错误,你可以查看apache2的错误日志 cat /var/log/apache2/error.log #######################apache配置多站点  发表于电光石火订阅227 Apache在安装之后默认只是指向一个站点,即127.0.0.1,如果要进行多站点的配置,需要更改一些配置。 1.让Apache在启动时能加载虚拟主机模块。 打开Apache安装目录下conf/httpd.conf文件,找到下面两行文字,把最前面的 # 号去掉,然后保存。 #LoadModule vhost_alias_module modules/mod_vhost_alias.so #Include conf/extra/httpd-vhosts.conf 2.接着找到同一文件中的DocumentRoot和Directory,改为站点目录的上一级目录 例如站点放在 D:/apache/www/1 和 D:/apache/www/2,则改为以下形式 DocumentRoot"D:/apache/www" <Directory"D:/apache/www"> 3.配置完成后即可打开Apache安装目录下/conf/extra/httpd-vhosts.conf文件,在最后添加如下: DocumentRoot是文件放置路径,ServerName是网站域名: <VIRTUALHOST *:80> ServerAdmin webmaster@dummy-host.example.com DocumentRoot "c:/Apache2/docs/dummy-host.example.com" #web目录路径 ServerName dummy-host.example.com #host名称 ServerAlias www.dummy-host.example.com ErrorLog "logs/dummy-host.example.com-error.log" CustomLog "logs/dummy-host.example.com-access.log" common </virtualhost> 最后重启Apache服务就配置完成。 FAQ: 遇到403问题如何解决? 遇到403问题,是由于目录没有权限访问导致,修改http.conf中Directory标签 <directory> Options FollowSymLinks AllowOverride None Order deny,allow Allow from 127.0.0.1 </directory> 6.0#########################django配置mysql数据库#########################  在settings.py中配置: DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 数据库引擎 'NAME': 'mydb', # 你要存储数据的库名,事先要创建之 'USER': 'root', # 数据库用户名 'PASSWORD': '1234', # 密码 'HOST': 'localhost', # 主机 'PORT': '3306', # 数据库使用的端口  } } 数据库迁移 Python3不支持MySQLdb,可用pymysql代替。 1.首先,在Python虚拟环境下安装pymysql:sudo pip install pymysql 2.然后,在项目文件夹下的_init_.py添加如下代码即可。 import pymysql pymysql.install_as_MySQLdb() 3.再者,在Terminal中执行数据库迁移命令: python manage.py makemigrations python manage.py migrate 6.1####################开启ubuntu云服务器的防火墙端口号##################### sudo ufw status 查看当前防火墙状态 ufw default allow/deny:外来访问默认允许/拒绝 ufw allow 8000:允许 访问8000端口,8000后可跟/tcp或/udp,表示tcp或udp封包。 ufw deny 8000:拒绝 访问8000端口,8000后可跟/tcp或/udp,表示tcp或udp封包。 开启apache2监听端口 8000 sudo vi /etc/apache2/ports.conf 添加 Listen 8000 7.##############################on-my-zsh################################  安装zsh sudo apt-get install zsh 2、把默认的Shell改成zsh chsh -s /bin/zsh 注意:不要使用sudo。 3、配置密码文件,解决chsh: PAM认证失败的问题 sudo vim /etc/passwd 把第一行的/bin/bash改成/bin/zsh,这个是root用户的 把最后一行的/bin/bash改成/bin/zsh,这个应该是每台电脑的登录用户名+计算机名组成的 4、安装Git sudo apt-get install git 5、安装oh-my-zsh 为什么要安装,用于快速配置zsh。 官网:http://ohmyz.sh/ 离线版本:(链接: https://pan.baidu.com/s/1i5iqYhB 密码: v5c2),如果使用离线版本需要修改为可执行权限:sudo chmod +x *.sh sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)" 6、重启电脑,查看效果 7、安装autojump自动跳转插件 官网:https://github.com/wting/autojump 安装: sudo apt-get install autojump 配置教程:cat /usr/share/doc/autojump/README.Debian 配置: vim .zshrc #在最后一行加入,注意点后面是一个空格 . /usr/share/autojump/autojump.sh 生效: source ~/.zshrc 8、安装zsh-syntax-highlighting语法高亮插件 官网:https://github.com/zsh-users/zsh-syntax-highlighting 安装: git clone https://github.com/zsh-users/zsh-syntax-highlighting.git echo "source ${(q-)PWD}/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc 生效: source ~/.zshrc 9、安装zsh-autosuggestions语法历史记录插件 官网:https://github.com/zsh-users/zsh-autosuggestions 安装: git clone git://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions plugins=(zsh-autosuggestions) 然后会发现上面这句话是不会生效的。这里科普一下:在~/.oh-my-zsh/plugins下有很多插件,直接使用plugins=(ant mvn svn git)这样的命令是可以直接加载插件的。 经过研究发现,如果使用plugins去执行插件的,首先要在本机已经安装了这个软件之后才可以使用。且这种方式在Ubuntu下不支持命令去执行,只能放在.zshrc文件下使用,然后再通过source ~/.zshrc使其生效。这个是对于Ubuntu比较吭的地方。 所以上面的plugins要放在~/.zshrc,具体修改如下: vim ~/.zshrc 增加插件: 然后增加zsh的执行文件在最后一行: source $ZSH_CUSTOM/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh 生效: source ~/.zshrc 10、配置主题 官方主题参考:https://github.com/robbyrussell/oh-my-zsh/wiki/External-themes sudo vim ~/.zshrc 找到ZSH_THEME="robbyrussell",修改为:ZSH_THEME="ys"; 生效: source ~/.zshrc 二、卸载: 执行: sudo sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/uninstall.sh)" 把/etc/passwd改回bash: 第一行的/bin/bash 最后一行的/bin/bash ###########################Ubuntu下使用命令安装配置中文环境#################################### 1. 查看当前语言环境 1.执行 echo $LANG 或者locale 2.若输出结果为en_US.UTF-8,则表示当前语言环境为英文 2. 安装中文语言包 执行命令: apt-get update && apt-get install language-pack-zh-hans 3. 编辑/etc/default/locale文件 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" 4. 编辑/etc/environment 文件 vim /etc/environment 重要提示:原本的PATH..内容保留,不要更改或删除 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" 5. 重启机器 输入命令: reboot ################################Python textbolb文本情感分析################################## 安装 sudo pip install -U textblob 如果已经安装TextBlob,需要更新则需要运行: sudo pip install -U textblob nltk 如果第一次安装TextBlob,你可能需要下载必要的NLTK语料库。命令: curl https://raw.github.com/sloria/TextBlob/master/download_corpora.py | python 使用此命令下载语料库: python -m textblob.download_corpora 问题解决: 我本地没有taggers/averaged_perceptron_tagger/averaged_perceptron_tagger.pickle这个文件,打开本地nltk_data,发现还真是,只有下载了 解决方法:使用nltk下载 nltk.download() #########################安装qt#################################### 1 安装包下载 在官网进行下载http://download.qt.io/archive/qt 2 安装QT 先对qt-opensource-linux-x64-5.11.1.run文件赋予可执行权限: $sudo chmod a+x qt-opensource-linux-x64-5.11.1.run 再在.run文件所在目录下运行.run文件安装QT $./qt-opensource-linux-x64-5.11.1.run 然后按照提示一路next完成安装(类似于windows中软件安装方式) 3 QT环境设置 ubuntu中的环境变量配置文件一般为/etc/profile, 所以修改该文件: $sudo vim /etc/profile 在打开的文件最后加入两行: export PATH="/opt/opt/Qt5.12.2/Tools/QtCreator/bin:$PATH" export PATH="/opt/opt/Qt5.12.2/5.12.2/gcc_64/bin:$PATH" 其中/opt/Qt5.12.2为QT的安装路径,根据情况修改。 保存退出后,使用命令 qtcreator 即可打开QT进行coding。 :-1: error: cannot find -lGL 问题解决: sudo apt-get install libgl1-mesa-dev 下面没测试 sudo apt-get install mesa-common-dev sudo apt-get install libglu1-mesa-dev -y ###########################TensorFlow################################ 
 
 sudo apt-get update  
    sudo apt-get upgrade

sudo pip install tensorflow

完成后继续安装,但是需要numpy 升级
  sudo pip install numpy -I

继续安装继续报错:launchpadlib 1.10.2 requires testresources, which is not installed.
不信邪了,继续解决

  sudo pip install launchpadlib
  同时升级一下pillow
  sudo pip install -U pillow

又会有好多错误,但是狗屎关于six包的
 sudo pip install six --upgrade --target="/usr/local/lib/python2.7/dist-packages"


我只能在升级啦,测试了各种升级办法,还是上面的这个好用(重点重点).
继续安装上面的各种包,终于…..成功啦!

测试一下
  • import tensorflow as tf
  • hello = tf.constant( 'Hello, TensorFlow!')
  • sess = tf.Session()
  • print(sess.run(hello))

############################QQ,微信,百度网盘等######################## Ubuntu18没成功 https://github.com/wszqkzqk/deepin-wine-ubuntu ##########################将自己的ubuntu18.04打包成镜像############################## Ubuntu18没成功 1. 先下载remastersys wget ftp://ftp.gwdg.de/pub/linux/easyvdr/mirror/remastersys/ubuntu/remastersys/remastersys_3.0.4-2_all.deb wget ftp://ftp.gwdg.de/pub/linux/easyvdr/mirror/remastersys/ubuntu/remastersys-gui/remastersys-gui_3.0.4-1_amd64.deb 2. 安装依赖 sudo apt install syslinux-utils isolinux squashfs-tools casper libdebian-installer4 ubiquity-frontend-debconf user-setup discover sudo apt install libvte-common libvte9 plymouth-x11 wget http://security.ubuntu.com/ubuntu/pool/universe/x/xresprobe/xresprobe_0.4.24ubuntu9_amd64.deb sudo dpkg -i xresprobe_*ubuntu9_amd64.deb 3. 安装remastersys sudo dpkg -i remastersys_3.0.4-2_all.deb sudo dpkg -i remastersys-gui_3.0.4-1_amd64.deb 4. 启动remastersys sudo remastersys-gui 说明: Backup:打包整个系统,包括你的个人数据和配置信息。 Distribution:打包一个可与朋友分享的iso文件,不包括你的个人数据和配置信息。 Customize: 软件设置 Clea WorkingFolder:清除临时文件 Check Log:检查remastersys.log Quit:退出Remastersys Backup

猜你喜欢

转载自www.cnblogs.com/pozhu15/p/11328935.html