标签: root

使用幂方法计算Java中的第n个根

我试图在java中使用立方根,Math.pow(n, 1.0/3)但因为它除了双精度,它不会返回确切的答案.例如,对于125,这给出了4.9999999999.有解决办法吗?我知道有一个立方根函数,但我想解决这个问题,所以我可以计算更高的根.

我不想舍入,因为我想知道一个数字是否具有整数根,通过这样做:Math.pow(n, 1.0 / 3) % ((int) Math.pow(n, 1.0 / 3)).

java math double decimal root

17
推荐指数
2
解决办法
2万
查看次数

如何使Android设备始终处于唤醒模式?

成功设备root后.现在,我需要使设备始终处于唤醒状态,即始终可见UI,无黑屏或任何白日梦屏幕.为此,我想我要完成以下事项:

  1. 没有锁定屏幕 - 关闭
  2. 睡眠设置为"从不"
  3. 白日梦开始"关闭"

我发现的是关于应用层的所有内容,即有一些应用程序可以执行上述任务.但是,由于我的移动设备是根植的,我想用系统文件实现,这样即使其他一些应用程序试图改变上述功能,他们也应该不能这样做.

android root android-wake-lock

17
推荐指数
3
解决办法
5481
查看次数

是否可以在非root用户手机上运行本机arm二进制文件?

好吧,我一直潜水在低级Android编程(使用CodeSourcery工具链的本机C/C++)的浑水中.我在模拟器上试用了可执行文件,但它确实有效.我想在真实的设备上试一试.所以我插入了我的nexus并将文件推送到文件系统.然后我尝试执行二进制文件,我得到了一个权限错误.无论我如何安装它,或者我发送它的地方都没关系,我不是root,它不会让我执行它.有没有办法在非root手机上运行这样的程序?

android arm root codesourcery android-ndk

16
推荐指数
1
解决办法
1万
查看次数

Runtime.exec():在Android中重启?

我正在寻找一种可用于重启root设备的解决方案.我知道重新启动设备对于用户来说是非常差的设计,如此处所述,并且它不适用于应用程序.主要目的是在测试期间重启手机(我在视频聊天应用程序上工作,有时我需要在一切都向南时重启)

我观察到重新启动手机远比使用终端(adb shell或ConnectBot)中的重启要快得多,而不是通过使用ACTION_REBOOT重新启动,这无论如何都无法使用.

目前,我可以获得超级用户权限

Process root = Runtime.getRuntime().exec("su");
Run Code Online (Sandbox Code Playgroud)

但我不能做实际的重启.我尝试G1(HTC)和Galaxy S(三星)没有任何成功.我找到了重启可执行文件/system/bin/reboot

以下是我的一些尝试:

Process reboot = Runtime.getRuntime().exec("/system/bin/reboot");
Process reboot = Runtime.getRuntime().exec("reboot");
Process reboot = Runtime.getRuntime().exec("su reboot"); 
Run Code Online (Sandbox Code Playgroud)

我读过这篇关于Runtime.exec()陷阱的文章,但我想我不是这种情况.

由于使用ConnectBot使我能够做这样的动作,我很确定它是可能的.请不要告诉我去看看ConnectBot代码,这是一个庞大而复杂的项目:)

你能帮我解决这个问题吗?

谢谢.

java android runtime reboot root

16
推荐指数
2
解决办法
3万
查看次数

Java应用程序是否有获得root权限的方法?

Files.walk(Paths.get("/var/")).count()当作为非特权用户运行时,执行可能会抛出异常,因为内部/var/存在需要遍历root权限的文件夹.

不是在寻找以root(例如sudo find /var),使用Process等方式执行bash命令的方法.

我只是想确保Files.walk(Paths.get("/var/")).count()不抛出AccessDeniedException:

Exception in thread "restartedMain" java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0
    at sun.reflect.NativeMethodAccessorImpl.invoke
    at sun.reflect.DelegatingMethodAccessorImpl.invoke
    at java.lang.reflect.Method.invoke
    at org.springframework.boot.devtools.restart.RestartLauncher.run
Caused by: java.io.UncheckedIOException: java.nio.file.AccessDeniedException: /var/cache/httpd
    at java.nio.file.FileTreeIterator.fetchNextIfNeeded
    at java.nio.file.FileTreeIterator.hasNext
    at java.util.Iterator.forEachRemaining
    at java.util.Spliterators$IteratorSpliterator.forEachRemaining
    at java.util.stream.AbstractPipeline.copyInto
    at java.util.stream.AbstractPipeline.wrapAndCopyInto
    at java.util.stream.ReduceOps$ReduceOp.evaluateSequential
    at java.util.stream.AbstractPipeline.evaluate
    at java.util.stream.LongPipeline.reduce
    at java.util.stream.LongPipeline.sum
    at java.util.stream.ReferencePipeline.count
    at com.example.DemoApplication.main
    ... 5 more
Caused by: java.nio.file.AccessDeniedException: /var/cache/httpd
    at sun.nio.fs.UnixException.translateToIOException
    at sun.nio.fs.UnixException.rethrowAsIOException
    at sun.nio.fs.UnixException.rethrowAsIOException
    at sun.nio.fs.UnixFileSystemProvider.newDirectoryStream
    at java.nio.file.Files.newDirectoryStream
    at …
Run Code Online (Sandbox Code Playgroud)

java file-permissions nio root

16
推荐指数
2
解决办法
3677
查看次数

Python垃圾收集可以那么慢吗?

我的python应用程序有问题,我认为它与python垃圾收集有关,即使我不确定...

问题是我的应用程序需要花费大量时间退出并切换到下一个功能.

在我的应用程序中,我处理非常大的字典,包含数千个大型对象,这些对象是从包装的C++类中实例化的.

我在程序中放了一些时间戳输出,我看到在每个函数结束时,当函数内部创建的对象超出范围时,解释器在调用下一个函数之前花费了大量时间.并且我在应用程序结束时观察到同样的问题,程序应该退出:在屏幕上的最后一个时间戳和新提示的外观之间花费了很多时间(〜小时!).

内存使用情况稳定,所以我真的没有内存泄漏.

有什么建议?

可以成千上万的大型C++对象的垃圾收集速度慢吗?

有没有办法加快这个?

更新:

非常感谢您的所有答案,您给了我很多调试我的代码的提示:-)

我在Scientific Linux 5上使用Python 2.6.5,这是一个基于Red Hat Enterprise 5的自定义发行版.实际上,我并没有使用SWIG为我们的C++代码获取Python绑定,而是使用Reflex/PyROOT框架.我知道,它在粒子物理学之外并不是很有名(但仍然是开源的,可以免费获得),我必须使用它,因为它是我们主要框架的默认值.

在这种情况下,来自Python端的DEL命令不起作用,我已经尝试过了.DEL只删除链接到C++对象的python变量,而不是内存中的对象本身,它仍然由C++端拥有...

......我知道,这不是标准我猜,有点复杂,对不起:-P

但是按照你的提示,我会描述我的代码,我会按照你的建议给你回复更多细节.

额外更新:

好的,按照你的建议,我用我的代码检测cProfile,我发现实际上gc.collect()功能是占用大部分运行时间的功能!

这里是cProfile+ pstats print_stats()的输出:


    >>> p.sort_stats("time").print_stats(20)
Wed Oct 20 17:46:02 2010    mainProgram.profile

         547303 function calls (542629 primitive calls) in 548.060 CPU seconds

   Ordered by: internal time
   List reduced from 727 to 20 due to restriction 

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
        4  345.701   86.425  345.704   86.426 {gc.collect}
        1  167.115  167.115  200.946  200.946 PlotD3PD_v3.2.py:2041(PlotSamplesBranches)
       28 …

python performance garbage-collection root

15
推荐指数
2
解决办法
8818
查看次数

Genymotion:编辑/ system/etc/hosts文件

我目前正在努力修改我的Genymotion Android模拟器的主机文件.

使用Genymotion时,众所周知的重新安装,拉动和推动方式似乎根本不起作用,因为文件系统始终是只读的并且重新安装被拒绝.

之前我认识到Genymotion VM已经附带超级用户,所以我打开了shell并且su'd,但问题是一样的:文件系统是只读的.

有没有人知道如何在Genymotion VM中更改该文件?

谢谢

阿恩

android root genymotion

15
推荐指数
1
解决办法
1万
查看次数

iOS App的Root权限

我正在开发一个针对越狱iOS设备的应用程序.它有助于自动执行某些任务.我需要在/ private/var/mobile/Library中创建一个简单的文本文件(实际上是.lua文件).显然,调试器会抛出访问被拒绝的异常.该应用程序现在被命名为"CreateFile",用于测试.

我尝试了以下步骤来获得root访问权限:

  1. 正常构建应用程序.
  2. 在应用程序包中创建可执行文件的副本.
  3. 打开原始可执行文件并使用以下脚本替换其内容:

    #!/bin/bash
    dir=$(dirname "$0")
    exec "${dir}"/CreateFile "$@"
    
    Run Code Online (Sandbox Code Playgroud)

    在iOS上直接启动根应用程序失败.因此,我们使用启动根可执行文件的脚本替换应用程序的主可执行文件.

  4. 在终端中,导航到应用包.

  5. chmod 0775原始可执行文件和chmod 6775复制的可执行文件.
  6. 将应用程序包复制到/ Applications到设备.重启SpringBoard,你应该好好去.如果应用程序未启动,请在设备上重复步骤5和6.

使用此方法,我可以成功将应用程序安装到/ Applications文件夹并启动它,但是我希望我仍然没有root权限,因为只要应用程序尝试写入操作,它就会崩溃.

如果有人能对这种情况有所了解,我将非常感激!

编辑:

在@creker的建议下做了一些额外的测试.当我尝试在应用程序的文档中创建允许目录中的文件时,它创建就好了,没有任何问题.因此,我确信文件创建不会导致崩溃,并且它只是无法访问的文件夹路径.

同样在@creker的建议下,我尝试将应用程序安装到/ Applications而没有任何启动脚本.应用程序以这种方式打开时崩溃.如果我在安装后将应用程序可执行文件chmod到775,则应用程序将打开但在尝试创建文件时仍会崩溃.

我查看了崩溃记者的系统日志.这是崩溃线:

System.UnauthorizedAccessException: Access to the path "/private/var/mobile/Library/test.txt" is denied
Run Code Online (Sandbox Code Playgroud)

仍然希望解决这个问题,欢迎任何想法!

root jailbreak ios

15
推荐指数
1
解决办法
1269
查看次数

createdb:数据库创建失败:错误:拒绝创建数据库的权限

我对root用户,超级用户,用户权限感到困惑!我无法在用户"sportu"内创建数据库.以下是我使用的命令: -

athleticu@ip-172-30-4-103:/home/ubuntu$ createdb -T template0 simple_db1
createdb: database creation failed: ERROR:  permission denied to create database
athleticu@ip-172-30-4-103:/home/ubuntu$ sudo createdb -T template0 simple_db1
sudo: unable to resolve host ip-172-30-4-103
createdb: could not connect to database template1: FATAL:  role "root" does not exist
Run Code Online (Sandbox Code Playgroud)

请有人澄清我的疑惑并告诉我应该写些什么!

postgresql root role permission-denied

15
推荐指数
4
解决办法
3万
查看次数

为了安全起见,我应该以非 root 身份在 docker 容器内运行东西吗?

我已经运行了我的docker build并且docker run没有 sudo。但是,当我在 docker 容器内启动进程时,它top在主机上显示为根进程(不在容器内)。

虽然由于命名空间和来自 docker 的 cgroups 无法访问主机文件系统,但它是否仍然比以简单用户身份运行更危险?

如果是这样,以非 root 身份在 docker 内部运行事物的正确方法是什么?

我应该USER nonroot在 Dockerfile 的末尾做吗?

更新:

root 它也需要构建一些东西。我应该放在USERDockerfile的最上面,然后sudo与其他依赖项一起安装,然后sudo仅在构建中需要时使用吗?

有人可以在开始、安装和使用 USER 时给出一个简单的 Dockerfile 示例sudo吗?

root docker

15
推荐指数
2
解决办法
307
查看次数