Ubuntu 修改分区后导致grub无法正确引导改善方法。


今天为了解决原来安装双系统的电脑后装的Ubuntu分区过小的问题的时候,将Windows分区的最后一个盘的一部分容量分配给了后装的Ubuntu,方法挺简单,和将大象装进冰箱一样,总共分为三步:

一、打开冰箱 — 不过冰箱是带锁的:先开锁,使用带有Ubuntu的U盘启动电脑,并采用试用模式进入Ubuntu,在ctrl+alt+T调出的终端中输入:gparted,在gparted的可视化界面就可以看到所有分区大小和使用情况;然后在这里就可以调整需要缩小的盘的大小,分出多余的容量,这样子就打开冰箱了。

注意:1. gparted需要root权限,因此需要输入sudo gparted;2. 若gparted未安装,可直接输入sudo apt-get install gparted安装。3. 调整大小后,要点击菜单栏的执行键,才能执行。

二、把大象放进去 — 还是在gparted里面,待前面调整完毕之后,再调整需要增加的分区的大小,将其内容左移到刚才释放的空间里,并执行。怎么样,是不是有一种将大象放进冰箱的感觉了?

注意:每一步都需要等前一步完全执行完毕才可以执行,不然会导致数据完全消失。

三、将门关上 — 不过门不是那么好关:将上述修改完毕,然后关闭gparted,并再次打开验证一下,分区确实已经改变了,说明修改大小的工作已经做完了。


大象已经进冰箱了!!!

但是当我们重启电脑的时候却发现,无法进入系统了,电脑界面上就一直显示:

error: unknown file system grub rescue >

这一个给我的感觉是大象虽然放进去了,但是冰箱却坏了,心情简直糟透了,于是我到处找方法,终于在多次尝试之后找到了正确的方法,现在记录如下:

1、 用ls的方式找到grub 所在的位置,其实刚才在分区的时候就已经很明显知道,’/’ 目录所的磁盘既是,但是为了保险我们用下面的方式验证一下。

先输入 ls  列出所有盘符,然后分别去 ls  (盘符名)/boot/grub 和 ls  (盘符名)/grub,若没有提示找不到路径即表示找到grub所在位置了。

2、 设置root路径 使用 set root =  (盘符名) 去指定root路径。

3、 设定prefix值 使用set prefix = (盘符名)/boot/grub or set prefix = (盘符名)/grub指定prefix值,根据上面找到的路径。

4、导入 Normal 启动模式  使用 insmod normal,然后再输入normal即可以启动进入系统了。

5、 安装和更新grub 进入系统之后,如下如下2个指令就可以修复系统grub,注意使用sudo,然后install时
dev对应的是磁盘,非磁盘分区。

sudo update-grub
sudo grub-install /dev/sda

然后就能心情愉快的重启了。

Android 编译环境的配置


前言:

android开发环境的配置是一个经常出现在博客的话题,这里重复别人的内容的同时也是提醒自己记住一些基础的知识。

基本上每一个成熟的平台的源码包都会附带一个编译环境配置的文档,内容大同小异,这里仅就主要的内容描述如下:
继续阅读“Android 编译环境的配置”

服务器共享磁盘网络映射方法集萃!


服务器设置了samba共享之后,客户端想要登录服务器修改内容,需要手动登录,但每次登录需要输入账号和密码比较麻烦,因此常用的方式为建立网络磁盘映射。

在windows平台增加磁盘映射的指令为net use,在你的电脑的开始菜单的运行框中输入cmd,然后在命令提示符界面输入net use,会列举出你所以已经映射的磁盘,如下为我的磁盘映射图片。
要想知道net use 的其他功能,可以输入net use /help 查看,如下图:

建立自己的磁盘映射并开机自动启动。

  • 新建一个文件,输入如下代码,并将文件的后缀改成.bat,如:auto_link.bat
@echo off  
net use H: \\your server IP\shareFile "password" /user:"user name"
  • 在你的电脑的开始菜单的运行框中输入regedit调出注册表编辑器,依次展开HKEY_LOCAL_MACHINE-SOFTWARE-MICROSOFT-WINDOWS-CURRENTVERSION-RUN 在右面新建一个字符串值,数据设置为该批处理文件的路径!

同一服务器,2个共享账号的切换

由于windows不允许2个账号同时登陆一个服务器,你需要按照如下方式新建2个文件,点击文件进行账号的切换,请分别复制代码存为2个bat文件,然后修改成自己的账号密码,即可使用。

ch_a.bat

@echo off
net use Y: /del /y
ping 127.0.0.1 -n 6 >nul 
net use Y: \\your server IP\shareFile "password A" /user:"username A"

ch_b.bat

@echo off
net use Y: /del /y
ping 127.0.0.1 -n 6 >nul 
net use Y: \\your server IP\shareFile "password B" /user:"username B"

说明:
1. net use Y: /del /y 删除就有链接,同一服务器使用同一磁盘名。
2. ping 127.0.0.1 -n 6 >nul 用ping的方法加入代码执行延迟。


若指令执行出现错误,可以手动删除对应密码再重新连接:

  • windows 7 保存网络密码的路径:

点击“控制面板”→“用户帐户” →“管理您的凭据”,或者在”运行”对话框中输入:control keymgr.dll,打开“凭据管理器”

  • windows xp 保存网络密码的路径:

点击“控制面板”→“用户帐户” →“管理我的网络密码”,或者在”运行”对话框中输入:control keymgr.dll,打开“凭据管理器”。

android 7.0多人编译错误的解决方法。


由于到了android 7.0 ,google 默认使用了jack编译器替代了原来的openJDK,而jack服务器目前多人同时编译时会出现错误,若你在编译时发现jack服务报错,则要按照如下步骤修改jack的配置。

修改 jack 端口号

修改如下文件中的端口号:

$HOME/.jack-server/config.properties #修改jack.server.service.port,jack.server.admin.port
$HOME/.jack-settings  #修改SERVER_PORT_SERVICE,SERVER_PORT_ADMIN


1. 修改完毕后要检查此2个文件的权限为-wr——-(600)
2. 修改时注意port和admin port 2个文件中填写的端口号要分别对应且不能重复。即:SERVER_PORT_SERVICE 和jack.server.service.port一样,SERVER_PORT_ADMIN和jack.server.admin.port一致。

编译完毕手动结束java服务退出系统占用

编译完成后,输入ps -axu | grep java ,观察若有类似如下的进程:

yourname    19989  5.8 11.3 41648436 14958720 ?   Sl    6月26  76:52 java -XX:MaxJavaStackTraceDepth=-1 -Djava.io.tmpdir=/tmp

通常jack占用很大的系统资源,若不手动关闭则会导致系统运行缓慢, 需要手动输入 pkill 19989[进程ID] 关闭掉该线程,退出jack的系统占用。

Ubuntu下samba的安装及使用


Samba是在Linux和UNIX系统上实现SMB(Server Message Block)协议的一个免费软件。
SMB是用在windows上文件共享的协议,1991年Andrew Tridgwell为了手上的不同系统的电脑能够共享文件,开发这一工具,一直沿用至今。

安装

sudo apt-get install samba samba-common

sudo apt-get install python-glade2

sudo apt-get install system-config-samba

注:后面2个为图形界面使用需要安装的。

设置Samba用户

若用户不存在,需先新建,按照如下方法:

sudo add user samba_users     #按照提示输入密码。

Samba用户的创建:

sudo smbpasswd -a samba_users  #按照提示输入密码。

增加共享文件夹

命令方式:

vim /etc/samba/smb.conf

若samba已启动,需要输入如下指令重启samba。

sudo /etc/init.d/samba restart
sudo service smbd restart

增加相应的字段,如下为范例:

[Share]
comment = Shared Folder with username and password
path = /home/**/share  # 路径
public = yes
writable = yes
valid users = samba_users
create mask = 0700
directory mask = 0700
force user = nobody
force group = nogroup
available = yes
browseable = yes

图形化方式:

打开Samba图形化界面,点击添加,设置好权限和访问用户即可。

访问

在windows环境下,在运行窗口输入对应打开了Samba的服务器地址即可访问。