问题列表 - 第18517页

我如何sudo当前的过程?

是否可以使用sudo前端(如gksudo)来提升当前进程的权限?我知道我可以做到以下几点:

sudo cat /etc/passwd-
Run Code Online (Sandbox Code Playgroud)

但我有兴趣这样做:

sudo-become-root # magic function/command
cat /etc/passwd-
Run Code Online (Sandbox Code Playgroud)

我正在用Python写作.我的用例是我有一个以用户身份运行的程序,但可能会遇到根目录所有的读/写文件.我想提示输入密码,获得root权限,执行我需要的操作,然后再选择删除权限.

我知道我可以将管理逻辑和非管理逻辑分离到单独的进程中,然后以root身份运行管理进程(通过一些通信 - policykit/dbus非常适合这里).但我希望有一个更简单(虽然承认风险更大)的解决方案.

我正在考虑通过sudo运行Solaris的ppriv然后修改当前进程的权限.这似乎是一个hacky-but-workingable往返.但据我所知,linux不提供ppriv.

(我很惊讶,这不是明摆着了;它似乎是想要一个不常见的事情,并不似乎是一个安全漏洞,允许在工艺升级上一个新的进程的升级.)

python linux root gksudo

9
推荐指数
1
解决办法
5104
查看次数

什么是线程争用?

有人可以简单解释什么是线程争用吗?

我用Google搜索了它,但似乎无法找到一个简单的解释.

language-agnostic multithreading

99
推荐指数
3
解决办法
5万
查看次数

在Objective C中编写方法声明的标准方法是什么?

我对Objective-C中的第一个参数提出了疑问

-(NSInteger) totalSeconds:(NSInteger)h minutes:(NSInteger)m seconds:(NSInteger)s;
Run Code Online (Sandbox Code Playgroud)

我注意到,似乎第一个参数通常被"拉入"消息名称本身并且没有命名.

[totalSeconds:9 minutes:59 seconds:59]
Run Code Online (Sandbox Code Playgroud)

这种语法是否可以接受:

    -(NSInteger) totalSeconds:hours:(NSInteger)h 
minutes:(NSInteger)m seconds:(NSInteger)s;
Run Code Online (Sandbox Code Playgroud)

我环顾四周,并没有看到这样的例子,虽然我预计它会很常见.

methods syntax objective-c

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

原始单元测试

是否值得为这样简单的代码编写单元测试:

public class TableController {
  private TableView view;

  public TableController(TableView view) {
    this.view = view;
  }

  public void onShowTable() {
    view.showTable();
  }
}
Run Code Online (Sandbox Code Playgroud)

我的项目中有很多这样非常简单的代码,它们连接控制器,视图,服务,远程服务等.单元测试只是重复所有内容,通常比代码本身大:

public class TableControllerTest {
  @Test
  public void showTable() {
    TableView view = createMock(TableView.class);
    view.showTable();

    replayAll();

    TableController controller = new TableController(view);
    controller.onShowTable();

    verifyAll();
  }
}
Run Code Online (Sandbox Code Playgroud)

真的需要这样的测试吗?

谢谢!

tdd unit-testing

5
推荐指数
2
解决办法
214
查看次数

Django:有没有办法在与包含ManyToManyField的模型不同的应用程序中的ManyToManyField中使用"直通"模型?

可以说我有两个django应用程序:

  • 比赛 - 将处理比赛数据
  • 条目 - 将处理与参赛者进入比赛相关的功能

在竞赛应用程序中,我有一个代表竞赛部分的模型:

class Division(models.Model):
    competition = models.ForeignKey(Competition)
    discipline = models.CharField(max_length=1, choices=DISCIPLINE_CHOICES)
    age_group = models.ForeignKey(AgeGroup)
    participants = models.ManyToManyField(Competitor, through='Entry')
Run Code Online (Sandbox Code Playgroud)

我想把Entry模型放在条目应用程序中:

class Entry(models.Model):
    division = models.ForeignKey('Division')
    competitor = models.ForeignKey(Competitor)
    withdrawn = models.BooleanField(default=False)
Run Code Online (Sandbox Code Playgroud)

如何解决from ... import ...语句,以便它们有效?当我输入import语句时,例如from entries.models import Entry我从syncdb忽略这些应用程序的模型(因为导入是循环的)或当我删除其中一个或两个时,我得到验证错误:

错误:一个或多个模型没有验证:entries.entry:'division'与模型Division有关系,它没有安装或者是抽象的.competitions.division:'参与者'通过模型Entry指定m2m关系,该关系尚未安装

我理解为什么会发生这种情况,但我不知道如何更改它,以便它可以工作(不需要将Entry模型移动到竞赛应用程序中,我真的不想这样做).

python django django-models manytomanyfield django-apps

8
推荐指数
2
解决办法
4429
查看次数

用C编程语言切换函数中的指针

如何在函数中切换指针?

void ChangePointers(int *p_intP1, int *p_intP2); 

int main() {

int i = 100,  j = 500;
int *intP1, *intP2; /* pointers */
intP1 = &i;
intP2 = &j;
printf("%d\n", *intP1); /* prints 100 (i) */
printf("%d\n", *intP2); /* prints 500 (j) */
ChangePointers(intP1, intP2);


printf("%d\n", *intP1); /* still prints  100, would like it swapped by now */
printf("%d\n", *intP2); /* still prints  500 would like it swapped by now */
}/* end main */

void ChangePointers(int *p_intP1, int *p_intP2) { …
Run Code Online (Sandbox Code Playgroud)

c c++ swap pointers function

7
推荐指数
3
解决办法
3949
查看次数

特定控制器的操作列表

我有一个控制器名称列表,然后将列出给定控制器中的所有操作(名称,GUID).

此处找到的所有控制器列表.

我还在阅读列出控制器上具有特定属性的所有操作,这些属性与我的目的相匹配,因为我还需要具有特定属性的操作.但我只有所选控制器的名称/ GUID,而不是对象本身.

我的场景:用户选择一个控制器(级联下拉列表),然后选择来自该控制器的操作来配置一些访问(和链接).因此,我只需要具有自定义属性的操作.

c# asp.net-mvc

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

寻找一个免费的,可定制的数据库网格

我正在努力将"开源"项目的代码库转换为实际工作的东西.我把这个术语放在引号中,因为原作者所做的是采取商业产品并说"好吧,我们现在已经赚了足够的钱.这是源代码.做任何你喜欢的事情." 不幸的是,代码库as-is需要超过1000美元的专有组件库进行编译.

除了一个主要的例外,我已经仔细研究了大部分专有的东西.它使用InfoPower TwwDBGrid相当多.在一个重要的位置,它有一个显示名称列和几个复选框的网格,并且可以为每个单独的记录自定义名称列的背景颜色和文本颜色.

我已经有了在Infopower网格中执行此操作的代码,重新实现DevEx网格将是微不足道的,但我似乎无法找到可以处理它的开源网格.我不需要InfoPower网格的全部功能,但我确实需要一个DB网格,它允许您指定列类型,例如复选框列,并且具有用于在绘制时着色单元格的事件处理程序.

有谁知道满足这些要求的网格?我真的不想做一些丑陋的事情,比如用TdbCtrlGrid来攻击它,如果我可以避免它...

delphi open-source dbgrid

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

在PHP中获取MySQL的最后7行

我正在尝试从用户输入记录的表中获取最后7条记录

这是我的查询:

$database->setQuery("SELECT * FROM #__mytable WHERE (user_id = '$uid')");
$dberr="";
if (!$database->query()) {
    $dberr = $database->getErrorMsg();
}

if(!$dberr==""){
   echo($dberr."<br>");
}else{
   $rows = $database->loadObjectList();
Run Code Online (Sandbox Code Playgroud)

如何通过$行循环以获得最后7行?

php mysql

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

与InnoDB相比,MyISAM的速度有多快?

人们说InnoDB不像MyISAM那么快.但是慢多少?当然,正如风中的经验法则一样.我的意思是......它通常是MyISAM的0.5倍?甚至更糟?或者,平均访问者在使用MyoAM平台时不会识别任何时间差异,而与InnoDB相同?

mysql

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